Сүүлийн үеийн нийтлэлүүд
Гэр / Facebook / Өгөгдлийн бүтцийн системийн илэрхийллийн хэлний функцууд. Өгөгдлийн бүтцийн системийн илэрхийллийн хэлний функцууд SKD Array болон ConnectRows функцуудыг ашиглан даалгаврыг хэрэгжүүлэх

Өгөгдлийн бүтцийн системийн илэрхийллийн хэлний функцууд. Өгөгдлийн бүтцийн системийн илэрхийллийн хэлний функцууд SKD Array болон ConnectRows функцуудыг ашиглан даалгаврыг хэрэгжүүлэх

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

Тайланг үүсгэж, өгөгдлийн байршлын үндсэн схемийг нэмж, хандалтын хяналтын системд "асуулга" төрлийн өгөгдлийн багцыг нэмж, энгийн хүсэлтийг үүсгэцгээе (Зураг 1-ийг үз).

Зураг 1. Өгөгдлийн багцын асуулга
"Тооцсон талбарууд" таб дээр TabularPart нэртэй тооцоолсон талбарыг нэмж, Илэрхийлэл баганад хоосон мөрийг зааж өгнө үү (Зураг 2-ыг үз).
Бидний тооцоолсон талбарыг нөөц болгон ашиглах тул "Нөөц" таб дээр бид бүлэглэх илэрхийлэлийг тохируулсан: ConnectRows(Масив(Масив(Бүтээгдэхүүн.Нэршил),""). Мөн бид энэ нөөцийг "Link" талбарыг ашиглан тооцоолох ёстойг харуулж байна (Зураг 3-ыг үз).
Тайлангийн үр дүн:
Сул тал нь бүлэглэлийг ашиглах явдал бөгөөд манай тохиолдолд бүлэглэлийг Link шинж чанараар гүйцэтгэдэг, эс тэгвээс энэ нь ажиллахгүй. Бүлэглэл байгаа нь өгөгдлийн гаралтыг тохируулахад зарим хязгаарлалт тавьдаг (Зураг 4-ийг үз).

2) Нийтлэг модулиас өөрийн функцийг дуудах.

Энгийн бөгөөд ойлгомжтой арга бол цорын ганц бэрхшээл бол тохирох нийтлэг модулийг олох эсвэл өөрийн функцийг бичих шинэ модулийг үүсгэх явдал юм :). "Бараа хүлээн авах" баримт бичигт дамжуулсан холбоосыг ашиглан функц нь баримт бичгийн хүснэгтийн хэсгээс мөрүүдийг хүлээн авч, хүлээн авсан барааны талаархи мэдээлэл бүхий мөр үүсгэх болно. Хэрэгжүүлээд эхэлцгээе.

Тайлан үүсгэж, өгөгдлийн байршлын үндсэн схемийг нэмж, хандалтын хяналтын системд "асуулга" төрлийн өгөгдлийн багцыг нэмж, энгийн хүсэлтийг үүсгэцгээе (Зураг 6-г үз).


Зураг 6. Өгөгдлийн багцын асуулга
Нийтлэг модулийг үүсгэцгээе _Demo Work WITH Reports ба экспортын функцийг бичье. Get List of Products for Report(). Доорх функцийн кодыг харна уу.
"Тооцсон талбарууд" таб дээр TabularPart нэртэй тооцоолсон талбарыг нэмж, Илэрхийллийн баганад бид ерөнхий модулийн функцийн дуудлагыг зааж өгнө (Зураг 2-ыг үз):
_Demo Тайлантай ажиллах. Тайлангийн бүтээгдэхүүний жагсаалтыг авах (Холбоос)

"Тохиргоо" таб руу очоод өгөгдлийн гаралтын тохиргоог хийцгээе - энэ нь нарийвчилсан бичлэг байх болно (Зураг 8-ыг үз).
Тайлангийн үр дүн:

Тайлангийн жишээ татаж авах

Энэ аргыг ашиглахдаа та юу мэдэх хэрэгтэй вэ:
1) Өгөгдлийн бүтцийн хөдөлгүүрийн илэрхийлэл нь дэлхийн нийтлэг тохиргооны модулиудын функцүүдийн дуудлагыг агуулж болно. Жишээлбэл:
Товчилсон нэр(холбоос, огноо, дугаар)
2) Програмчлалын дагуу тайлан гаргахдаа өгөгдлийн бүрэлдэхүүн процессорын харгалзах параметрийг зааж өгсөн тохиолдолд л нийтлэг модулиудын функцийг ашиглахыг зөвшөөрнө (4-р параметр):
CompositionProcessor = newDataCompositionProcessor;
LayoutProcessor.Initialize(LayoutLayout, DecryptionData, True);
3) Нийтлэг модулиудын функцийг тусгай талбарын илэрхийлэлд ашиглах боломжгүй.
4) Хэрэв нийтлэг модулийн функцийг харуулсан тайланг үүсгэх үед үл хамаарах зүйл тохиолдвол модулийн гүйцэтгэлийн контекстийг шалгана уу (Зураг 9-г үзнэ үү).

Ашигласан функцүүдийн тодорхойлолт

Мөрүүдийг холбох(утга, зүйл тусгаарлагч, багана тусгаарлагч)- мөрийг нэг мөрөнд нэгтгэх зориулалттай.
  • Утга - нэг мөрөнд нэгтгэх шаардлагатай илэрхийллүүд. Хэрэв энэ нь Массив бол массивын элементүүдийг мөр болгон нэгтгэнэ. Хэрэв энэ нь ValueTable бол хүснэгтийн бүх багана, мөрүүдийг эгнээ болгон нэгтгэнэ;
  • Элемент тусгаарлагч - Массивын элементүүд болон утгын хүснэгтийн мөрүүдийн хооронд тусгаарлагч болгон ашиглах текст агуулсан мөр. Өгөгдмөл - мөрийн тэжээлийн тэмдэгт;
  • Багана тусгаарлагч - утгын хүснэгтийн баганын хооронд тусгаарлагч болгон ашиглах текст агуулсан мөр. Өгөгдмөл ";".
Массив([Янз бүрийн] илэрхийлэл)- Та утгын хүснэгтийг параметр болгон ашиглаж болно. Энэ тохиолдолд функцийн үр дүн нь параметр болгон дамжуулсан утгуудын хүснэгтийн эхний баганын утгуудыг агуулсан массив болно. Хэрэв илэрхийлэл нь Массив функцийг агуулж байвал илэрхийлэлийг нэгтгэсэн илэрхийлэл гэж үзнэ. Хэрэв Various түлхүүр үгийг зааж өгсөн бол үүссэн массив нь давхардсан утгыг агуулаагүй болно.

Тайлан хийх бүтээгдэхүүний жагсаалтыг авах (DocumentLink)- функц нь ирж буй барааны жагсаалт бүхий мөрийг үүсгэдэг.
// Сонголтууд:
// DocumentLink - DocumentLink.Барааны баримт - Баримт бичиг "Барааны баримт".
// Буцах утга:
// Мөр - бүтээгдэхүүний жагсаалт бүхий мөр.
Функц Тайлан (DocumentLink) экспортлох бүтээгдэхүүний жагсаалтыг авах

Бүтээгдэхүүний жагсаалт = "";

DocumentLink.Products циклээс мөр бүрийн PM
Бүтээгдэхүүний жагсаалт = Бүтээгдэхүүний жагсаалт + Шугам TC.Нэршил;
Бүтээгдэхүүний жагсаалт = Бүтээгдэхүүний жагсаалт + Symbols.PS;
Төгсгөлийн мөчлөг;

Бүтээгдэхүүний буцаах жагсаалт;

EndFunction // тайланд зориулсан бүтээгдэхүүний жагсаалтыг авах ()

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


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

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

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

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

Сонголтууд:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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


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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

1. Тооцоолох (Үнэлгээ)- зарим бүлэглэлийн хүрээнд илэрхийллийг үнэлэх зорилготой. Уг функцийг платформын өмнөх хувилбаруудтай нийцүүлэхэд ашигладаг. Үүний оронд CalculateExpression функцийг ашиглахыг зөвлөж байна.

Синтакс:
Тооцоолох(Илэрхийлэл, Бүлэглэх, Тооцооллын Төрөл)

Сонголтууд:

  • Илэрхийлэл(шугам). Тооцоолсон илэрхийлэл агуулсан;
  • Бүлэглэх(шугам). Илэрхийллийг үнэлэх агуулгын хүрээнд бүлэглэлийн нэрийг агуулна. Хэрвээ хоосон мөрийг бүлэглэлийн нэр болгон ашигласан бол тооцооллыг одоогийн бүлэглэлийн хүрээнд гүйцэтгэнэ. Хэрэв GrandTotal мөрийг бүлгийн нэр болгон ашигласан бол тооцооллыг нийт дүнгийн хүрээнд гүйцэтгэнэ. Үгүй бол тооцооллыг ижил нэртэй эцэг эхийн бүлгийн хүрээнд гүйцэтгэнэ.
    Жишээлбэл:
    Нийлбэр(Борлуулалтын.Нийтийн эргэлт) / Тооцоолох("Нийт(Борлуулалтын.Нийт)", "Нийт").
    Энэ жишээнд үр дүн нь бүлэглэлийн бичлэгийн "Борлуулалтын хэмжээ" талбарын дүнг бүхэлд нь зохион байгуулалтын ижил талбарын дүнтэй харьцуулсан харьцаа болно.
  • Тооцооллын төрөл(шугам). Хэрэв энэ параметрийг "Нийт Нийт" гэж тохируулсан бол илэрхийлэл нь бүх бүлгийн бүртгэлд тооцогдоно. Хэрэв параметрийн утга нь "Бүлэглэх" бол одоогийн бүлгийн бичлэгийн утгыг тооцоолно.
2. Илэрхийлэлийг үнэлэх (EvalExpression) - зарим бүлэглэлийн хүрээнд илэрхийллийг үнэлэх зорилготой. Энэ функц нь бүлгүүдийн сонголтыг харгалзан үздэг боловч шаталсан сонголтыг харгалздаггүй. Энэ функцийг тухайн бүлгийн бүлгийн сонголт дахь бүлэглэлд ашиглах боломжгүй.

Синтакс:
Тооцоолох илэрхийлэл(Илэрхийлэл, бүлэглэх, тооцооллын төрөл, эхлэл, төгсгөл, эрэмбэлэх, шаталсан эрэмбэлэх, боловсруулахIdenticalorderValues)

Сонголтууд:

  • Илэрхийлэл(шугам). Тооцоолсон илэрхийлэл агуулсан;
  • Бүлэглэх(шугам). Илэрхийллийг үнэлэх агуулгын хүрээнд бүлэглэлийн нэрийг агуулна. Хэрвээ хоосон мөрийг бүлэглэлийн нэр болгон ашигласан бол тооцооллыг одоогийн бүлэглэлийн хүрээнд гүйцэтгэнэ. Хэрэв GrandTotal мөрийг бүлгийн нэр болгон ашигласан бол тооцооллыг нийт дүнгийн хүрээнд гүйцэтгэнэ. Үгүй бол тооцооллыг тухайн нэр бүхий эцэг эхийн бүлгийн хүрээнд хийх болно;
  • Тооцооллын төрөл(шугам). Хэрэв энэ параметрийг "Нийт Нийт" гэж тохируулсан бол илэрхийлэл нь бүх бүлгийн бүртгэлд тооцогдоно. Хэрэв параметрийн утга нь "Бүлэглэх" бол одоогийн бүлгийн бичлэгийн утгыг тооцоолно. Хэрэв параметрийг "Нөөцийн бус бүлэглэл" гэж тохируулсан бол бүлгийн бичлэгийн функцийг нөөцөөр тооцохдоо анхны бүлэглэлийн эхний бүлгийн бичлэгийн хувьд илэрхийлэлийг үнэлнэ. "GroupingNonResource" гэсэн утгатай "GroupingNonResource" гэсэн утгатай CalculateExpression функцийг үнэлэхдээ уг функцийг "Grouping" параметрийн утгаар үнэлдэгтэй ижил аргаар үнэлдэг. Өгөгдлийн бүтэц зохион бүтээгч нь талбарыг гаргахдаа өгөгдлийн бүрдлийн бүдүүвчийг үүсгэх үед - бүлэглэлийг гүйцэтгэдэг эх үүсвэрийг зохион байгуулалтад заасан "GroupingNon-Resource" параметрээр CalculateExpression функцийг ашиглан тооцоолсон илэрхийллийг байрлуулалтад гаргадаг. Нөөцөөр бүлэглэсэн бусад нөөцийн хувьд ердийн нөөцийн илэрхийлэлийг буцаана. Хэрэв параметрийг "Шатлал" гэж тохируулсан бол илэрхийллийг дээд шатлалын бүртгэлд, хэрэв байгаа бол, хэрэв эцэг эхийн шаталсан бүртгэл байхгүй бол бүхэл бүтэн бүлэглэлд үнэлэгдэх ёстой. Бүдүүвч бүтээгч нь Шатлалын бүлгийн талбарт %-ийн илэрхийлэл үүсгэх үед шаталсан тооцооны төрөл бүхий одоогийн бүлэглэлд тооцож буй нөөцийн илэрхийллийн CalculateExpression функцтэй нөөцийн илэрхийллийн хамаарлыг агуулсан илэрхийлэл үүсгэдэг.
  • Эхлэх. Фрагментийг аль бичлэгээс эхлүүлэх, нэгтгэсэн илэрхийллийн функцийг тооцоолох, нэгтгэсэн функцүүдийн гадна талбарын утгыг аль бичлэгээс авахыг заана. Дараахын аль нэгийг агуулсан мөр:
    • "Эхлээд" Эхний бүлгийн бүртгэлийг авах шаардлагатай. Хаалтанд байгаа үгийн дараа та илэрхийллийг зааж өгөх боломжтой бөгөөд үр дүнг нь бүлэглэх эхнээс офсет болгон ашиглах болно. Үр дүнгийн утга нь тэгээс их бүхэл тоо байх ёстой. Жишээлбэл, First(3) – бүлэглэлийн эхнээс гурав дахь бичлэгийг хүлээн авах. Хэрэв эхний бичлэг нь бүлэглэлээс гадуур байвал бүртгэл байхгүй гэж үзнэ. Жишээлбэл, хэрэв 3 бичлэг байгаа бөгөөд та First(4)-ийг авахыг хүсвэл бичлэг байхгүй гэж үзнэ.
    • "Сүүлчийн" Та хамгийн сүүлийн бүлгийн бичлэгийг авах хэрэгтэй. Хаалтанд байгаа үгийн дараа та илэрхийлэлийг зааж өгөх боломжтой бөгөөд үүний үр дүнг бүлгийн төгсгөлөөс офсет болгон ашиглах болно. Үр дүнгийн утга нь тэгээс их бүхэл тоо байх ёстой. Жишээлбэл, Last(3) – бүлгийн төгсгөлөөс гурав дахь бичлэгийг хүлээн авах. Хэрэв сүүлийн бичлэг нь бүлэглэлээс гадуур байвал бүртгэл байхгүй гэж үзнэ. Жишээлбэл, хэрэв 3 бичлэг байгаа бөгөөд та Last(4)-ийг авахыг хүсвэл бичлэг байхгүй гэж үзнэ.
    • "Өмнөх" Та өмнөх бүлгийн бичлэгийг авах хэрэгтэй. Хаалтанд байгаа үгийн дараа та илэрхийлэлийг зааж өгч болно, үүний үр дүнг одоогийн бүлэглэлийн бичлэгээс буцаах байдлаар ашиглах болно. Жишээ нь, Previous(2) – өмнөх бичлэгээс өмнөхийг авах. Хэрэв өмнөх бичлэг нь бүлэглэлээс гадуур байвал (жишээ нь, хоёр дахь бүлэглэлийн бичлэг нь Өмнөх(3)-г авах шаардлагатай), эхний бүлэглэлийн бичлэгийг авна. Бүлэглэлийн нийт дүнгийн өмнөх бичлэгийг хүлээн авахдаа эхний бичлэгийг авна.
    • "Дараачийн" Та дараагийн бүлгийн бичлэгийг авах хэрэгтэй. Хаалтанд байгаа үгийн дараа та илэрхийлэлийг зааж өгч болно, үүний үр дүнг одоогийн бүлэглэлийн бичлэгээс урагшлуулах байдлаар ашиглах болно. Жишээлбэл, Next(2) – дараагийн бичлэгээс дараагийн бичлэгийг авах. Хэрэв дараагийн бичлэг нь бүлэглэлээс давсан бол бичлэг байхгүй гэж үзнэ. Жишээлбэл, хэрэв 3 оруулга байгаа бөгөөд гурав дахь оруулга нь Next-г хүлээн авбал оруулаагүй гэж үзнэ. Бүлэглэлийн нийлбэр дүнгээр дараагийн бичлэгийг хүлээн авах үед бүртгэл байхгүй гэж үзнэ.
    • "Одоогийн". Та одоогийн бичлэгийг авах хэрэгтэй. Бүлэглэлийн нийлбэрийг олж авахдаа эхний бичлэгийг авна.
    • "Хязгаарын үнэ цэнэ". Заасан утгаараа бичлэг авах хэрэгцээ. Хаалтанд байгаа LimitingValue гэсэн үгийн дараа та фрагментийг эхлүүлэхийг хүсч буй утга бүхий илэрхийлэл буюу эхний эрэмбийн талбарыг зааж өгөх хэрэгтэй. Захиалгын талбарын утга нь заасан утгаас их буюу тэнцүү байгаа эхний бичлэгийг бичлэг болгон буцаана. Жишээлбэл, Хугацааны талбарыг захиалгын талбар болгон ашиглаж байгаа бөгөөд энэ нь 2010-01-01, 2010-02-01, 2010-03-01 гэсэн утгатай бөгөөд та LimitingValue(DateTime(2010)) авахыг хүсвэл , 1, 15)), дараа нь 02/01 огноотой бичлэгийг авна.2010 он.
  • Төгсгөл. Фрагментийг аль бичлэгт үргэлжлүүлэх, аль хэсэгт нэгтгэсэн илэрхийллийг тооцоолохыг заана. Дараахын аль нэгийг агуулсан мөр:
    • "Эхлээд"
    • "Сүүлчийн"
    • "Өмнөх"
    • "Дараачийн"
    • "Одоогийн".
    • "Хязгаарын үнэ цэнэ".
  • Эрэмбэлэх. Таслалаар тусгаарлагдсан илэрхийллүүдийг жагсаасан мөр, дарааллыг нь эрэмбэлэх ёстой. Хэрэв заагаагүй бол дарааллыг илэрхийллийг үнэлж буй бүлэгтэй ижил аргаар гүйцэтгэнэ. Илэрхийлэл бүрийн дараа та Өсөх, өсөх дарааллаар эрэмбэлэх, Буурах, буурах дарааллаар эрэмбэлэх, Автоматаар эрэмбэлэх, лавлагаа талбаруудыг иш татсан объектыг захиалах талбараар эрэмблэх түлхүүр үгийг зааж өгч болно. Auto Order гэдэг үгийг Өсөж буй үг болон Descending гэсэн үгтэй хамт хэрэглэж болно.
  • Шаталсан эрэмбэлэх. Ангилахтай төстэй. Шаталсан бүртгэлийг зохион байгуулахад ашигладаг. Хэрэв заагаагүй бол layout compositor нь Sort параметрт заасан дарааллын дагуу захиалга үүсгэдэг.
  • Захиалгын ижил утгыг боловсруулах. Дараахын аль нэгийг агуулсан мөр:
    • "Хамтдаа" гэдэг нь өмнөх болон дараагийн бичлэгийг тодорхойлохдоо эрэмбэлэгдсэн бичлэгийн дарааллыг ашиглахыг;
    • "тус тусад нь" гэдэг нь өмнөх болон дараагийн бүртгэлийг эрэмбэлэх илэрхийллийн утгууд дээр үндэслэн тодорхойлно гэсэн үг;
    Жишээлбэл, үр дүнгийн дарааллыг огноогоор эрэмбэлсэн бол:
    1. 2001 оны 1-р сарын 01 Иванов М. 10
    2. 2001 оны 1-р сарын 02 Петров С. 20
    3. 2001 оны 1-р сарын 02-ны өдөр Сидоров Р.30
    4. 2001 оны 1-р сарын 03 Петров С. 40
    "Тус тусад нь" гэсэн захиалгын ижил утгыг боловсруулахдаа өмнөх 3-р бичлэгийн хувьд 2-р бичлэг, "Хамтдаа"-ыг ашиглах үед 1-р бичлэг байх болно. Мөн одоогийн бичлэгийн 2-р бичлэгийн фрагмент нь "Тус тусад нь" байх болно. 2, "Хамтдаа"-ын хувьд - 2, 3-р бичлэг байх болно. Тиймээс, "Тус тусад нь" гэсэн одоогийн рекордын нийт дүн 20, "Хамтдаа" - 50 байх болно. Эхлэл болон "Хамтдаа" гэсэн хэсэгт заасан үед. Төгсгөлийн параметрүүдийн хувьд та "Эхний", "Сүүлийн", "Өмнөх", "Дараах" гэсэн байрлалд офсетийг зааж өгөх боломжгүй. Өгөгдмөл утга нь "Тусдаа" байна.
Жишээ:
Бүлэглэлийн бичлэгийн "Борлуулалтын хэмжээ" талбарын дүнгийн нийт бүдүүвч дэх ижил талбарын дүнтэй харьцуулсан харьцааг олж авах:
Нийлбэр(Борлуулалтын.Нийт Эргэлтийн) / Тооцоолол илэрхийлэл("Нийт(Борлуулалтын.Нийт)", "Нийт").

Энэ жишээ нь одоогийн шатлалын утгыг тооцоолно:
Сонголт
Level() > 0 үед
Дараа нь EvaluateExpression("Лавлагаа", "Шатлал")
Үгүй бол Null
Төгсгөл

Тэмдэглэл:
Энэ функц нь бүлгүүдийн сонголтыг харгалзан үздэг боловч шаталсан сонголтыг харгалздаггүй. Энэ функцийг тухайн бүлгийн бүлгийн сонголт дахь бүлэглэлд ашиглах боломжгүй. Жишээлбэл, Нэршлийн бүлгийг сонгохдоо та Тооцоолсон илэрхийлэл("Sum(SumTurnover)", "TotalTotal") > 1000 илэрхийллийг ашиглах боломжгүй. Гэхдээ ийм илэрхийллийг шаталсан сонголтод ашиглаж болно. Хэрэв төгсгөлийн бичлэг нь эхлэлийн бичлэгийн өмнө байгаа бол нарийвчилсан өгөгдлийг тооцоолох, нэгтгэсэн функцийг тооцоолох бүртгэл байхгүй гэж үзнэ. Нийт дүнгийн интервалын илэрхийллийг тооцоолохдоо (Бүлэглэх параметрийг "Нийт Нийт" гэж тохируулсан) нарийвчилсан өгөгдлийг тооцоолох, нэгтгэсэн функцийг тооцоолох бүртгэл байхгүй гэж үздэг. CalculateExpression функцийн илэрхийлэл үүсгэх үед layout compositor, хэрэв эрэмбэлэх илэрхийлэл нь бүлэглэлд ашиглах боломжгүй талбаруудыг агуулж байвал CalculateExpression функцийг NULL-ээр солино.

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

Синтакс:
CalculateExpressionWithGroupArray (Илэрхийлэл, GroupFieldExpressions, SelectRecords, SelectGroups)

Сонголтууд:

  • Илэрхийлэл(Мөр) - үнэлэх илэрхийлэл. Жишээ нь, "Amount(AmountTurnover)";
  • Талбарын илэрхийллийн бүлгүүд
  • Бичлэгийн сонголт
  • Бүлэг сонгох- бүлгийн бүртгэлд сонгосон сонголт. Жишээ нь: "Amount(AmountTurnover) > &Parameter1".
Жишээ:
Хамгийн их(CalculateExpressionWithGroupArray("Дүн (AmountTornover)", "Харилцагч тал"));


Байршлын бүтээгч нь зөвхөн CalculateArrayWithGroup функцийг агуулсан тусгай талбарыг харуулах илэрхийлэл үүсгэх үед дэлгэцийн илэрхийлэлийг үүсгэдэг бөгөөд ингэснээр харагдац болон өгөгдлөөр харуулсан өгөгдлийг эрэмбэлдэг.
Жишээлбэл, илэрхийлэл бүхий захиалгат талбарт:
ТооцоолохExpressionWithGroupArray("Хэмжээ(Дэмжээ)", "Харилцагч тал")
Байршлын бүтээгч нь гаралтын хувьд дараах илэрхийллийг үүсгэнэ.
ХолбохМөрүүд(Масив(Захиалга(ИлэрхийлэлийгБүлэглэхҮнэт Хүснэгтээр тооцоолох("Харах(Нийлбэр(ӨгөгдлийнСэтгэл. Дүн Эргэлтийн))), Дүн(ӨгөгдлийнСэт. Дүн Эргэлтийн)", "ӨгөгдлийнСэт. Дансны"), "2")))

4. GroupValueTable-ээр илэрхийллийг тооцоолох (EvalExpressionWithGroupValueTable) - функц нь утгын хүснэгтийг буцаадаг бөгөөд элемент бүр нь заасан талбараар бүлэглэх илэрхийлэлийг тооцоолох үр дүнг агуулсан болно.

Синтакс:
CalculateExpressionWithGroupValueTable (Илэрхийлэл, GroupField илэрхийлэл, Бичлэгийн сонголт, Бүлгийн сонголт)

Сонголтууд:

  • Илэрхийлэл(Мөр) - үнэлэх илэрхийлэл. Нэг мөрөнд таслалаар тусгаарлагдсан олон илэрхийлэл байж болно. Илэрхийлэл бүрийн дараа AS гэсэн нэмэлт түлхүүр үг болон утгын хүснэгтийн баганын нэр байж болно. Жишээ нь: "Харилцагч тал, Дүн (Дэмжээ) Борлуулалтын хэмжээгээр."
  • Талбарын илэрхийллийн бүлгүүд- таслалаар тусгаарлагдсан бүлэглэх талбаруудын илэрхийлэл. Жишээ нь, "Counterparty, Party";
  • Бичлэгийн сонголт- дэлгэрэнгүй бүртгэлд хэрэглэсэн илэрхийлэл. Жишээлбэл, "Устгасан туг = худал". Хэрэв энэ параметр нь нэгтгэх функцийг ашигладаг бол өгөгдлийг бүрдүүлэхэд алдаа гарна;
  • Бүлэг сонгох- бүлгийн бүртгэлд сонгосон сонголт. Жишээ нь: "Amount(AmountTurnover) > &Parameter1".
Жишээ:
Үнийн бүлгүүдийн хүснэгтээр илэрхийллийг тооцоолох ("Харилцагч тал AS данс, Борлуулалтын хэмжээ (эргэлтийн дүн), "Данс")

Энэ функцийн үр дүн нь эсрэг талын болон борлуулалтын хэмжээ багана бүхий утгуудын хүснэгт байх бөгөөд үүнд борлуулалтын хэмжээ бүхий эсрэг талууд багтсан болно.
Байршлын бүрдүүлэгч нь бүдүүвчийг үүсгэх үед функцын параметрүүдийг өгөгдлийн найрлагын байршлын талбар болгон хувиргадаг. Жишээлбэл, Account талбарыг DataSet.Account руу хөрвүүлэх болно.
Жишээ нь: илэрхийлэлтэй захиалгат талбар:
ТооцоолохExpressionWithGroupValueTable("Бүртгэл, Дүн(Дэмжээ)", "Бүртгэл")
Байршлын бүтээгч нь гаралтын хувьд дараах илэрхийллийг үүсгэнэ.
ХолбохМөрүүд(GetPart(Захиалга(ИлэрхийлэлийгБүлгийнҮнэт Хүснэгтээр тооцоолох("DataSet.Account, DataSet.AccountRepresentation, Sum(DataSet.AmountTurnover), Харах(DataSet.AmountTurnover), DataSet.OrderingField ",","3", ","тоолох ), "2, 4"))

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

Синтакс:
Түвшин()

Жишээ:
Түвшин()

6. SequenceNumber - дараагийн серийн дугаарыг авна уу.

Синтакс:
NumberByOrder()

Жишээ:
NumberByOrder()

7. SequenceNumberInGrouping - одоогийн бүлэгт дараагийн дарааллын дугаарыг буцаана.

Жишээ:
NumberByOrderInGroup()

8. Формат - дамжуулсан утгын форматтай мөрийг авах.

Синтакс:
Формат(утга, FormatString)

Сонголтууд:

  • Утга- форматлах шаардлагатай илэрхийлэл;
  • FormatString- форматын мөрийг 1C: Enterprise форматын мөрийн дагуу тохируулсан.
Жишээ:
Формат(Нэхэмжлэх. Баримт бичгийн дүн, "NPV=2")

9. BeginOf Period

Синтакс:
Эхлэх үе (огноо, хугацааны төрөл)

Сонголтууд:

  • огноо(Огноо). Тодорхой огноо;
  • Үеийн төрөл
Жишээ:
Эхлэх үе(ОгнооЦаг(2002, 10, 12, 10, 15, 34), "Сар")
Үр дүн: 2002-01-10 00:00:00

10. Төгсгөлийн хугацаа - функц нь өгөгдсөн огнооноос тодорхой огноог сонгоход зориулагдсан.

Синтакс:
Төгсгөлийн үе(огноо, хугацааны төрөл)

Сонголтууд:

  • огноо(Огноо). Тодорхой огноо;
  • Үеийн төрөл(шугам). Дараах утгуудын аль нэгийг агуулна: Минут; Цаг; өдөр; Долоо хоног; Сар; улирал; Жил; Арван жил; Хагас жил.
Жишээ:
Төгсгөлийн үе(ОгнооЦаг(2002, 10, 12, 10, 15, 34), "Долоо хоног")
Үр дүн: 10/13/2002 23:59:59

11. НэмэхKDate (ОгнооНэмэх) - функц нь огноонд тодорхой утгыг нэмэх зорилготой юм.

Синтакс:
AddToDate(Илэрхийлэл, Өсөлтийн төрөл, Хэмжээ)

Сонголтууд:

  • Илэрхийлэл(Огноо). Анхны огноо;
  • Томруулах төрөл(шугам). Дараах утгуудын аль нэгийг агуулна: Минут; Цаг; өдөр; Долоо хоног; Сар; улирал; Жил; Арван жил; Хагас жил.
  • Хэмжээ(Тоо). Огноог хэр хэмжээгээр нэмэгдүүлэх шаардлагатай бол бутархай хэсгийг үл тоомсорлодог.
Жишээ:
AddToDate(DateTime(2002, 10, 12, 10, 15, 34), "Сар", 1)
Үр дүн: 11/12/2002 10:15:34

12. Огнооны ялгаа - функц нь хоёр огнооны зөрүүг олж авахад зориулагдсан.

Синтакс:
Ялгаа огноо(Илэрхийлэл1, Илэрхийлэл2, ялгааны төрөл)

Сонголтууд:

  • Илэрхийлэл1(Огноо). Хасах огноо;
  • Илэрхийлэл2(Огноо). Анхны огноо;
  • Төрөл ялгаа(шугам). Утгауудын аль нэгийг агуулна: Хоёрдугаарт; Минут; Цаг; өдөр; Сар; улирал; Жил.
Жишээ:
ОГНЫ ЯЛГА(DATETIME(2002, 10, 12, 10, 15, 34),
DATETIME(2002, 10, 14, 9, 18, 06), "ӨДӨР")
Үр дүн: 2

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

Синтакс:
Дэд мөр(мөр, байрлал, урт)

Сонголтууд:

  • Шугам(шугам). Дэд мөрийг гаргаж авсан мөр;
  • Байрлал(Тоо). Мөрөөс гаргаж авах дэд мөр эхлэх тэмдэгтийн байрлал;
  • Урт(Тоо). Хуваарилагдсан дэд мөрийн урт.
Жишээ:
SUBSTRING(Данс.Хаяг, 1, 4)

14. Утасны урт - функц нь мөрний уртыг тодорхойлох зориулалттай.

Синтакс:
StringLength(String)

Параметр:

  • Шугам(шугам). Урт нь тодорхойлогдсон мөр.
Жишээ:
Шугам(Харилцагч талууд. Хаяг)

15. жил- энэ функц нь Date төрлийн утгаас оныг гаргаж авахад зориулагдсан.

Синтакс:
Он (огноо)

Параметр:

  • огноо(Огноо). Оныг тодорхойлсон огноо.
Жишээ:
ЖИЛ(зардал.Огноо)

16. улирал - энэ функц нь Date төрлийн утгаас улирлын тоог гаргаж авахад зориулагдсан. Улирлын тоо нь ихэвчлэн 1-ээс 4 хооронд хэлбэлздэг.

Синтакс:
улирал (огноо)

Параметр:

  • огноо(Огноо). Улирлыг тодорхойлсон огноо
Жишээ:
QUARTER(зардал.Огноо)

17. Сар - энэ функц нь Огноо төрлийн утгаас сарын дугаарыг гаргаж авахад зориулагдсан. Сарын тоо ихэвчлэн 1-ээс 12 хооронд хэлбэлздэг.

Синтакс:
Сар(огноо)

Параметр:

  • огноо(Огноо). Тухайн сарыг тодорхойлсон огноо.
Жишээ:
САР(зардал.Огноо)

18. Жилийн өдөр (DayOfYear) - энэ функц нь Огноо төрлийн утгаас тухайн жилийн өдрийг олж авахад зориулагдсан. Жилийн өдөр ихэвчлэн 1-ээс 365 (366) хооронд хэлбэлздэг.

Синтакс:
Жилийн өдөр (огноо)

Параметр:

  • огноо(Огноо). Жилийн өдрийг тогтоосон огноо.
Жишээ:
ӨДРИЙН ЖИЛ(Зардлын Данс. Огноо)

19. Өдөр- энэ функц нь Огноо төрлийн утгаас тухайн сарын өдрийг олж авахад зориулагдсан. Сарын өдөр ихэвчлэн 1-ээс 31 хүртэл байдаг.

Синтакс:
Өдөр(огноо)

Параметр:

  • огноо(Огноо). Сарын өдрийг тогтоосон огноо.
Жишээ:
ӨДӨР(зардал.Огноо)

20. Долоо хоног - энэ функц нь Огноо төрлийн утгаас тухайн жилийн долоо хоногийн дугаарыг авахад зориулагдсан. Жилийн долоо хоногуудыг 1-ээс эхлэн дугаарлана.

Синтакс:
Долоо хоног(огноо)

Параметр:

  • огноо(Огноо). Долоо хоногийн тоог тогтоосон огноо.
Жишээ:
ДОЛОО ХОНОГ(Зардал. Огноо)

21. Долоо хоногийн өдөр - энэ функц нь Огноо төрлийн утгаас долоо хоногийн өдрийг олж авахад зориулагдсан. Долоо хоногийн ердийн өдөр нь 1 (Даваа) -аас 7 (Ням гараг) хооронд хэлбэлздэг.

Синтакс:
Долоо хоногийн өдөр (огноо)

Параметр:

  • огноо(Огноо). Долоо хоногийн өдрийг тогтоосон огноо.
Жишээ:
ДОЛОО ХОНОГИЙН ӨДӨР (Зардлын нэхэмжлэхийн огноо)

22. Цаг- энэ функц нь Date төрлийн утгаас өдрийн цагийг олж авахад зориулагдсан. Өдрийн цаг 0-ээс 23 цаг хүртэл байна.

Синтакс:
Цаг(огноо)

Параметр:

  • огноо(Огноо). Өдрийн цагийг тодорхойлсон огноо.
Жишээ:
ЦАГ(зардал.Огноо)

23. Минут - энэ функц нь Огноо төрлийн утгаас цагийн минутыг авах зориулалттай. Цагийн минут 0-ээс 59 хүртэл байна.

Синтакс:
Минут(огноо)

Параметр:

  • огноо(Огноо). Цагийн минутыг тогтоосон огноо.
Жишээ:
МИНУТ(зардал.Огноо)

24. Хоёрдугаарт - энэ функц нь Огноо төрлийн утгаас минутын секундийг авах зориулалттай. Нэг минутын секунд нь 0-ээс 59 хооронд хэлбэлздэг.

Синтакс:
Хоёр дахь (огноо)

Параметр:

  • огноо(Огноо). Минутын секундийг тодорхойлсон огноо.
Жишээ:
SECOND(Зардал.Огноо)

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

Синтакс:
Экспресс(Илэрхийлэл, Төрөл заалт)

Сонголтууд:

  • Илэрхийлэл- хувиргах илэрхийлэл;
  • Төрөл заалт(шугам). Төрөл мөр агуулсан. Жишээлбэл, "Тоо", "Мөр" гэх мэт. Анхдагч төрлөөс гадна энэ мөрөнд хүснэгтийн нэрийг агуулж болно. Энэ тохиолдолд заасан хүснэгтийн лавлагааг илэрхийлэх оролдлого хийх болно.
Жишээ:
Экспресс(Data.Props1, "Тоо(10,3)")

26. IsNull (IsNull) - Энэ функц нь эхний параметрийн утга NULL байвал хоёр дахь параметрийн утгыг буцаана. Үгүй бол эхний параметрийн утгыг буцаана.

Синтакс:
IsNull(Илэрхийлэл1, Илэрхийлэл2)

Сонголтууд:

  • Илэрхийлэл1- шалгах үнэ цэнэ;
  • Илэрхийлэл2- Хэрэв илэрхийлэл1 нь NULL байвал утгыг буцаана.
Жишээ:
Тийм NULL(Дүн (Борлуулалтын дүн), 0)

27.ACos- радиан дахь нумын косинусыг тооцоолно.

Синтакс:
ACos(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Өнцгийг тодорхойлох косинусын утга (-1 ... 1 мужид).
28.ASin- арксиныг радианаар тооцоолно.

Синтакс:
ASin(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Өнцгийг тодорхойлох синусын утга (-1 ... 1 мужид).
29. Атан- радиан дахь артангенсыг тооцоолно.

Синтакс:
ATan(илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Өнцгийг тодорхойлох шүргэгч утга.
30. Cos- косинусыг тооцоолно.

Синтакс:
Cos(Илэрхийлэл)

Параметр:

  • Илэрхийлэл
31. Exp- e тоог нэг зэрэгтэй болгох.

Синтакс:
Exp(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Зэрэглэлийн утга.
32. Бүртгэл- натурал логарифмыг тооцоолно.

Синтакс:
Бүртгэл (Илэрхийлэл)

Параметр:

  • Илэрхийлэл
33. Лог10- 10 суурьтай X-ийн логарифмыг тооцоолно.

Синтакс:
Лог10(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Анхны тоо 0-ээс их байна.
34. Пау- экспонентаци.

Синтакс:
Хүч (Үндсэн, Үзүүлэлт)

Сонголтууд:

  • Суурь(Тоо). Экспонентацийн үйлдлийн үндэс.
  • Индекс(Тоо). Экспонент.
35. Нүгэл- синусыг тооцоолно.

Синтакс:
Нүгэл(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Радианаар тодорхойлсон.
36. Sqrt- квадрат язгуурыг тооцдог.

Синтакс:
Sqrt(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Сөрөг бус тоо.
37. Тан- тангенсыг тооцоолно.

Синтакс:
Бор (Илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Өнцгийг тодорхойлох синусын утга.
38. Дугуй- анхны дугаарыг шаардлагатай битийн гүн хүртэл дугуйруулна. Дугуйлах горим нь стандарт (1.5-аас 2).

Синтакс:
Env(Илэрхийлэл, Битийн гүн)

Сонголтууд:

  • Илэрхийлэл(Тоо). Жинхэнэ дугаар;
  • Битийн гүн(Тоо). Бөөрөнхийлөх аравтын бутархайн тоо.
39. Int- тооны бутархай хэсгийг таслана.

Синтакс:
Объект (илэрхийлэл)

Параметр:

  • Илэрхийлэл(Тоо). Бутархай тоо.
40. Нийтлэг модулиудын функцууд

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

Жишээ:
Товчилсон нэр(Баримт бичиг.Холбоос, Баримт бичиг.Огноо, Баримт бичиг.Дугаар)

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

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

<Пустое значение>".

Жишээ:
Танилцуулга (Харилцагч тал)

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

Хэрэв массив эсвэл утгын хүснэгтийг параметр болгон ашигласан бол функц нь ";" тэмдэгтээр тусгаарлагдсан массивын бүх элементүүдийн тэмдэгт мөрийг агуулсан мөрийг буцаана. Хэрэв ямар нэгэн элемент хоосон тэмдэгт мөртэй байвал "<Пустое значение>".

Жишээ:
Мөр(Борлуулалтын огноо)

43. ValueIsFilled

NULL утгуудын хувьд Undefined нь үргэлж Худал буцаана.
Булийн утгуудын хувьд энэ нь үргэлж Үнэнийг буцаана.
Бусад төрлүүдийн хувьд тухайн төрлийн өгөгдмөл утгаас утга нь өөр байвал Үнэнийг буцаана.

Жишээ:
ValueFilled(Хүргэх огноо)

44. LevelInGroup - энэ функц нь бүлэгт хамаарах одоогийн бичлэгийн түвшинг авдаг.

Шаталсан бүлэгт бичлэгийн үүрлэх түвшинг олж авахад ашиглаж болно.

Жишээ:
LevelInGroup()

45. ValueType

Синтакс:
ValueType(Илэрхийлэл)

Параметр:

  • Илэрхийлэл(шугам). Мөрийн утгын төрөл.
Функцийн параметрийн утгын төрлийг агуулсан Type төрлийн утгыг буцаана.