Опис структури XML-файлу

Для створення призначеного для користувача XML - реєстру в першу чергу необхідно створити XML - файл з описом полів, таблиць та умов відображення даних. Приклад призначеного для користувача реєстру:

<? Xml version = "1.0" encoding = "windows-1251"?>

<Query name = "Документи призначені для користувача">

<Result-fields>

<Field name = "Rcd" as = "CashDoc_Rcd" olap = "" progressbar = "" progressbarright = "" progressbarcolor = "" olapicon = "" calculated = "true" scale = "0" type = "int" prgres = " "prgtype =" 2 "visible =" false ">

<Program> CashDoc_Rcd </ program> </ field>

<Field name = "Номер" as = "CashTestNmr" olap = "" progressbar = "" progressbarright = "" progressbarcolor = "" olapicon = "" calculated = "true" scale = "20" type = "string" prgres = " "prgtype =" 2 ">

<Program> CashDoc_DocNmr </ program> </ field>

<Field name = "Дата" as = "CashTestDat" olap = "" progressbar = "" progressbarright = "" progressbarcolor = "" olapicon = "" calculated = "true" scale = "20" type = "string" prgres = " "prgtype =" 2 ">

<Program> CashDocR.CashDoc_DocDat </ program> </ field>

<Field name = "Контрагент" as = "CashTestPtn" olap = "" progressbar = "" progressbarright = "" progressbarcolor = "" olapicon = "" calculated = "true" scale = "20" type = "string" prgres = " "prgtype =" 2 ">

<Program> CashDoc_Ptn </ program> </ field>

<Field name = "Сума" as = "CashTestSm" olap = "" progressbar = "" progressbarright = "" progressbarcolor = "" olapicon = "" calculated = "true" scale = "20" type = "string" prgres = " "prgtype =" 2 ">

<Program> Round (CashDoc_Sm, Svl_Acc) </ program> </ field>

</ Result-fields>

<Tables>

FROM CashDocR

LEFT JOIN Svl on SVl_Rcd = CashDoc_Val

LEFT JOIN SprPls ON SprPls_Rcd = CashDoc_Sch

LEFT JOIN Jr ON Jr_Rcd = CashDoc_JrnRcd

LEFT JOIN DogSprOtv ON DogSprOtv_Rcd = CashDoc_Otv

LEFT JOIN SOu ON Ou_Rcd = CashDoc_CdOu

</ Tables>

<Where>

(CashDoc_Rcd =: prmValidRec OR: prmValidRec = 0)

</ Where>

<Params>

<Param name = "ID документа" id = "prmValidRec" type = "int" />

</ Params>

</ Query>

Опис параметрів файлу:

  • Query name - назва реєстру. Відображатиметься в списку вікна Види реєстру (комбінація клавіш Alt + 0) ;
  • Блок < result - fields > </ result - fields > - між цими тегами йде опис всіх полів, які є в реєстрі;
  • Блок <field name = " Номер " as = "CashTestNmr" olap = "" progressbar = "" progressbarright = "" progressbarcolor = "" olapicon = "" calculated = "true" scale = "20" type = "string" prgres = "" prgtype = "2"> <program> CashDoc_DocNmr </ program> </ field> - опис поля в реєстрі:
    • name = "Номер" - назва поля, буде відображатися в шапці таблиці;
    • as = " CashTestNmr " - назва поля, з яким надалі можна буде працювати з калькуляцій;
    • scale = "20" - довжина поля, для поля типу int довжина завжди дорівнює нулю;
    • type = " string " - тип поля . Може бути string, int;
    • prgtype = "2" - тип обробки програми . 1 - BasicScript, 2 - SQL запит;
    • visible = " false " - вказує чи буде поле видимим в реєстрі для користувача;
    • <program> CashDoc_DocNmr </ program> - програмаполучения отримання поля;
  • Блок < tables > </ tables > - описуються таблиці, з яких потрібно отримувати поля, а так же ключі зв'язування таблиць. Синтаксис аналогічний SQL запитам;
  • Блок < where > </ where > - в цьому блоці описуються умови вибірки даних із зазначених в тезі < tables > таблиць. У цьому блоці повинна бути обов'язково вказана рядок (CashDoc_Rcd =: prmValIdRec OR: prmValIdRec = 0), де CashDoc_Rcd це унікальний запис ( Rcd ) в таблиці ;
  • Блок < params > </ params > містить список переданих параметрів з Комплексу в запит. У всіх призначених для користувача реєстрах блок повинен містити як мінімум один параметр, як в прикладі;

Імена для користувача XML файлів завжди повинні починатися з букви U (наприклад, U047_0_001.xml). Створений файл потрібно помістити в папку XML серверної частини Комплексу .