Skip to content

Ҳужжат шаблонларидаги функсиялар

Шаблонлардан фойдаланган ҳолда ҳужжатларни автоматик форматлашда функсиялардан фойдаланиш мумкин. Функсиялар ҳужжатларингизда ма'лумотларни қандай кўрсатилишини соддалаштиради. Масалан, формулалардан фойдаланиб сонларни сўзларда автоматик кўрсатиш ёки буюртма қийматларини ҳисоблаш мумкин.

Формулалар

Ҳужжатга формула қўшиш учун қуйидаги синтаксисдан фойдаланинг: %%%ФОРМУЛА%%%.

А ФОРМУЛА майдоннинг қийматини ҳисоблаш учун ифода бўлиб, у ҳисобланадиган майдондагидек ишлайди.

Мисол:

%%%TEXT({{DataTag.Service.Quantity}}*{{DataTag.Service.Cost}};".2f")%%%

Юқоридаги мисолда формула ичига "Сервиcе" ма'лумот ёрлиғидан тегишли ўзгарувчилар ёрдамида ма'лумот қўшилган. Иккита қиймат кўпайтирилиб, натижа муайян хизмат ёки маҳсулотнинг умумий қийматини беради. ТЕХТ() функсияси қийматни инсон учун ўқилиши қулай матн қаторига форматлайди.

Муҳим

Масалан:

  • Формулалар битта сатрда ёзилиши керак ва Энтер босиш орқали бўлиниши мумкин эмас. Агар янги қатордан бошлаш керак бўлса, "\н" кетма-кетлигидан фойдаланинг.
  • Қатор бўлинмасдан
%%%IF({{Datatag.Service calculation.Service}}=""; ""; {{Datatag.Service calculation.Service}} + " - " + {{Datatag.Service calculation.Quantity}} + " " + {{Datatag.Service calculation."Unit"}} + " (" + {{Datatag.Service calculation.Comment}} + ")" )%%%
  • Қатор бўлиши билан
%%%IF({{Datatag.Service calculation.Service}}=""; ""; {{Datatag.Service calculation.Service}} + " - " + {{atatag.Service calculation.Quantity}} + " " + {{{Datatag.Service calculation."Unit"}} + "\н (" + {{Datatag.Service calculation.Comment}} + ")" )%%%
  • Формуладаги ўзгарувчиларни масалан, қалин ёки курсив қилиб форматлаш мумкин эмас.
  • Агар формуладан олинган натижа қалин қилиб кўринишини хоҳласангиз, форматлашни фоиз белгиларини ҳам ўз ичига олган бутун формулага қўлланг.

Функсиялар

Ҳужжат шаблони формулаларида мавжуд бўлган барча функсиялар:

СУМ функсияси

СУМ() — формула ҳисобланганда олинадиган барча қийматларни қўшувчи функсия. У кўпайтириладиган ўзгарувчининг ҳар бир элементи учун қўлланади.

Масалан, сизда "Сервиcе" ма'лумот ёрлиғи бор ва ҳужжатдаги барча хизматлар учун умумий қийматни ҳисобламоқчисиз. Бунинг учун қуйидаги функсияни ишлатасиз:

SUM({{DataTag.Service.Cost}})

Хизматлар учун умумий қийматни олиш учун хизмат нархини буюртма қилинган миқдорга кўпайтиришингиз керак. Ҳужжатда фойдаланиладиган формула қуйидагича бўлади:

SUM({{DataTag.Service.Cost}}*{{DataTag.Service.Quantity}}))

Э'тибор беринг, СУМ() функсияси ичида ҳар қандай функсиялардан ташкил топган формула бўлиши мумкин.

ПЛУРАЛФОРМ функсияси

Берилган сондан келиб чиққан ҳолда сўз охирини қўшиш ёки ном оддий бўлмаган ҳолда сўзнинг ўзини ўзгартириш учун ишлатилади.

Формат:

PLURALFORM (number; "text1"; "text2";)

Ҳисобланган сондан келиб чиққан қийматга қараб функсия иккита параметрдан бирини танлайди. Параметрлар алгоритмга мувофиқ қат'ий тартибда кўрсатилиши керак.

Масалан, "доллар" сўзини шакллантириш керак бўлсин. Алгоритмга амал қилинг:

Аввало, керакли сўзни 1 билан ёзинг:

  • 1 доллар

Бу шуни англатадики, функсиянинг биринчи параметри "техт1" ўрнига "доллар" бўлиши керак.

Кейин 2 билан сўзни ёзинг:

  • 2 долларс

Бу эса функсиянинг иккинчи параметри "техт2" ўрнига "долларс" бўлиши кераклигини англатади.

Натижада ҳужжатда қуйидаги ПЛУРАЛФОРМ() функсиясини кўрсатишингиз мумкин:

PLURALFORM(SUM({{Datatag.Service.Cost}}*{{Datatag.Service.Quantity}}); "dollar"; "dollars")

НУМБЕРАСWОРДС функсияси

Бу функсия сонни сўзларда қайтаради. Фақат бутун қисми сўзларда ёзилади.

Формат:

NUMBERASWORDS(number; Output; "language")

Қаерда:

  • нумбер — сон ёки формула
  • Оутпут — рақам қандай кўрсатилишини белгилайди (0 дан 6 гача)
  • лангуаге — чиқиш тилини белгиловчи қатор. Агар бўш қолдирилса (""), ҳужжатни яратаётган фойдаланувчининг тили ишлатилади.

Тиллар ва уларнинг Оутпут усуллари:

  • Инглизча ("эн")
    • 0-3 — стандарт (кардинал сон)
    • 4-6 — бош ҳарф билан бошланадиган стандарт
  • Немисча ("де")
    • 0 — стандарт (жинсдан мустақил)
    • 1 — аёл шаклида ёзилади
    • 2 — эркак шаклида ёзилади
    • 3 — нейтрал шаклда ёзилади
    • 4 — бош ҳарф билан аёл шаклида
    • 5 — бош ҳарф билан эркак шаклида
    • 6 — бош ҳарф билан нейтрал шаклда
  • Франсузча ("фр")
    • 0 — стандарт (кардинал сон)
    • 1 — аёл шаклида ёзилади
    • 2 — эркак шаклида ёзилади
    • 4 — бош ҳарф билан аёл шаклида
    • 5 — бош ҳарф билан эркак шаклида

Масалан, ҳужжатда сонни сўзларда кўрсатиш учун қуйидаги функсиядан фойдаланинг:

NUMBERASWORDS(SUM({{DataTag.Service.Cost}}*{{DataTag.Service.Quantity}}); 2; "en")

ФРАCТИОНАЛПАРТ функсияси

Бу функсия соннинг каср қисмини кўрсатади. Ўнлик нуқтадан кейин нечта рақам кўрсатилишини белгилашингиз мумкин.

Формат:

FRACTIONALPART(number; NumberOfDigitsAfterDecimal)

Масалан, хизмат нархининг сентларини ҳужжатда чиқариш учун қуйидаги функсиядан фойдаланинг:

FRACTIONALPART(SUM({{DataTag.Service.Cost}}*{{DataTag.Service.Quantity}}); 2)

Ушбу функсия ўнликдан кейинги икки рақамни кўрсатади:

  • 176.03 — функсия 3 қайтаради.
  • 15.15 — функсия 15 қайтаради.
  • 16.156 — функсия биринчи иккита ўнликни 16 га яхлитлайди.

Ўтиш