Перейти к содержанию

Функции для вывода метаданных в формате .json: различия между версиями

Материал из Химсофт Вики
Строка 60: Строка 60:
настройка может выглядеть следующим образом:
настройка может выглядеть следующим образом:


<syntaxhighlight lang="pascal">
 
['n_pok':=0]
<span style="background-color: aqua">['n_pok':=0]</span><br>
['ResearchInfo':=МДОбъект(0; 'Результаты исследований_испытаний_измерений')]
['<span style="background-color: yellow">ResearchInfo</span>':=МДОбъект(0; '<span style="background-color: yellow">Результаты исследований_испытаний_измерений</span>')]<br>
[for Значения ФГИС]['n_pok':={n_pok} + 1]
[for Значения ФГИС]<span style="background-color: aqua">['n_pok':={n_pok} + 1]</span>
    ['ResearchInfoDetails':=МДОбъект({ResearchInfo}; 'Рез-т измерения'+ {n_pok})]
:['<span style="background-color: lime">ResearchInfoDetails</span>':=МДОбъект(<span style="background-color: yellow">{ResearchInfo}</span>; '<span style="background-color: lime">Рез-т измерения</span>'+ <span style="background-color: aqua">{n_pok}</span>)]
    ['Name':=МДЗначение({ResearchInfoDetails}; 'Наим. пок'; [Значения ФГИС -> Показатель])]
::['Name':=МДЗначение(<span style="background-color: lime">{ResearchInfoDetails}</span>; 'Наим. пок'; [Значения ФГИС -> Показатель])]
    ['Rez':=МДЗначение({ResearchInfoDetails}; 'Результат'; [Значения ФГИС -> Результат])]
::['Rez':=МДЗначение(<span style="background-color: lime">{ResearchInfoDetails}</span>; 'Результат'; [Значения ФГИС -> Результат])]
[endfor]
[endfor]
</syntaxhighlight>
 


'''''Примечание:''' настройку структуры такого вида, который перечислен в примере 1 и 2 лучше прописывать в прямоугольнике, который выводится только один раз (не разворачивается в запросе).''
'''''Примечание:''' настройку структуры такого вида, который перечислен в примере 1 и 2 лучше прописывать в прямоугольнике, который выводится только один раз (не разворачивается в запросе).''

Версия от 10:01, 14 октября 2026

МДОбъект(a;'b')

Раздел, у которого планируется вывод значений.

Функция возвращает идентификатор раздела в документе.

Аргументы (фактические параметры):

  • a – идентификатор другого раздела, либо 0, если раздел самый первый в структуре;
  • b – название, понятное для пользователя.

МДЗначение(a; 'b'; [c])

Значения, которые необходимо вывести.

Функция возвращает число:

  • 1 – ошибка записи (указан ошибочный идентификатор раздела);
  • 2 – удачная запись.

Аргументы (фактические параметры):

  • a – идентификатор раздела, к которому будут привязаны выводимые значения;
  • b – название перечисленных значений, понятное для пользователя;
  • c - значение переменной из запроса, которую необходимо выводить, либо константа.

Пример 1

Для вывода информации следующей структуры

"Заказчик": {

"Юридическое лицо": {
"ОГРН": "1026601367539",
"ИНН": "6623000680",
"КПП": "662343001"
}

}

настройка может выглядеть следующим образом:

['Customer':=МДОбъект(0; 'Заказчик')]

['Organization':=МДОбъект({Customer}; 'Юридическое лицо')]
['OGRN':=МДЗначение({Organization}; 'ОГРН'; [Заказчик для ФГИС -> ОГРН])]
['INN':=МДЗначение({Organization}; 'ИНН'; [Заказчик для ФГИС -> ИНН])]
['KPP':=МДЗначение({Organization}; 'КПП'; [Заказчик для ФГИС -> КПП])]

Пример 2

Для вывода информации следующей структуры


"Результаты исследований_испытаний_измерений": {

"Рез-т измерения1": {
"Наим. пок.": "Влажность",
"Результат": "15",
},
"Рез-т измерения2": {
"Наим. пок.": "Массовая концентрация диоксида серы",
"Результат": "49",
}

}

настройка может выглядеть следующим образом:


['n_pok':=0]
['ResearchInfo':=МДОбъект(0; 'Результаты исследований_испытаний_измерений')]
[for Значения ФГИС]['n_pok':={n_pok} + 1]

['ResearchInfoDetails':=МДОбъект({ResearchInfo}; 'Рез-т измерения'+ {n_pok})]
['Name':=МДЗначение({ResearchInfoDetails}; 'Наим. пок'; [Значения ФГИС -> Показатель])]
['Rez':=МДЗначение({ResearchInfoDetails}; 'Результат'; [Значения ФГИС -> Результат])]

[endfor]


Примечание: настройку структуры такого вида, который перечислен в примере 1 и 2 лучше прописывать в прямоугольнике, который выводится только один раз (не разворачивается в запросе).

МДМассив(a;’b’)

Раздел, у которого планируется вывод значений в виде списка без дополнительных комментариев.

Функция возвращает идентификатор раздела в документе.

Аргументы (фактические параметры):

  • a – идентификатор раздела, к которому будут привязаны выводимые значения;
  • b – название перечисленных значений, понятное для пользователя.

Пример 3

Для вывода информации следующей структуры

{
  "Даты анализа": {
    "10.10.2026",
    "15.10.2026",
    "18.10.2026",
  }
}

настройка может выглядеть следующим образом:

['Data':=МДМассив(0; 'Даты анализа')]
[for Даты анализа]
    ['Zap_json':=МДЗначение({Data}; ''; [Даты анализа -> Значение])]
[endfor]