Pereiti prie turinio

Ataskaitos kūrimas, keitimas arba naikinimas

Ataskaita konfigūruojama XML failu. Reikia nurodyti:

  • užklausą CyberElements Identity duomenų bazei, kad būtų gauta norima informacija,
  • kiekvieno rodomo stulpelio ypatybes XML formatu: objekto tipą, pavadinimą SQL duomenų bazėje, rodomą pavadinimą, rodymo indeksą ir kt.
  • diagramų rodymo parinktis (stulpelinė diagrama, skritulinė diagrama, spalvoti taškai).

Spustelėkite mygtuką „New report“, kad sukurtumėte ir sukonfigūruotumėte naują ataskaitą.

Pasirinkite ataskaitą ir spustelėkite mygtuką „Modify“, kad pakeistumėte jos konfigūraciją.

New report

Ataskaitos ypatybės

Parametras Aprašas Tipai ir galimos reikšmės
Name Rodomas ataskaitos pavadinimas. Simbolių eilutė. Privalomas.
Code Atitinka objekto ID. Jo reikšmė turi būti unikali tarp visų ataskaitų. Simbolių eilutė be tarpų ir specialiųjų simbolių. Privalomas
Category Ataskaitų kategorija, kurioje bus rodomas ataskaitų sąrašas. Iš anksto nustatytų kategorijų sąrašas.
Description Simbolių eilutė.
XML XML žymės, aprašančios SQL užklausą Hpliance duomenų bazėje, kiekvieno ataskaitos stulpelio ypatybes ir grafinių elementų ypatybes. Tekstas XML formatu.
Choice of report template Grafinis ataskaitos šablonas (greta duomenų lentelės). Without chart, Histogram, Stacked histogram, Pie chart arba Color ball by threshold.
With parameters Leidžia pridėti vartotojo įvedamus kintamuosius. Į XML reikės įtraukti žymę . Žymės langelis.

Paprastos ataskaitos XML rašymas

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<Config> 

   <!-- If there is a chart, indicate whether to display the chart on the dashboard --> 

   <DisplayGraphicInDashboard>true</DisplayGraphicInDashboard> 

   <!-- If there is a chart, indicate the chart display index on the dashboard --> 

   <DashboardDisplayIndex>0</DashboardDisplayIndex> 

   <!-- Indicates whether data is displayed as soon as the report page is accessed -->

   <DirectDisplay>true</DirectDisplay> 

   <!-- The SQL query used to retrieve the data to be displayed --> 

   <Query></Query> 

   <!-- Definition of the list of columns available to the user. --> 

   <!-- The visibility and display index of the column can be configured by the user when viewing the report.  --> 

   <Columns> 

       <!-- Definition of a column (to be duplicated as many times as necessary) --> 

       <Column> 

           <!-- The Object Type -->  

           <ObjectType></ObjectType> 

           <!-- Name of the column containing the IDs -->  

           <Column_Link_Id></Column_Link_Id> 

           <!-- The name of the field as defined in the query.  --> 

           <Name></Name> 

           <!-- The default name to display to the user.  -->  

           <DisplayName></DisplayName> 

           <!-- Indicates whether this column is visible by default. TRUE or FALSE  -->

           <Visible></Visible> 

           <!-- The default display index.  --> 

           <DisplayIndex></DisplayIndex> 

       </Column> 

   </Columns> 

</Config> 

Pavyzdys: vartotojų be telefono numerio sąrašas

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<Config> 

   <DisplayGraphicInDashboard>true</DisplayGraphicInDashboard> 

   <DashboardDisplayIndex>0</DashboardDisplayIndex> 

   <DirectDisplay>true</DirectDisplay> 

   <Query> 

SELECT personne_uid,personne_display_name FROM PERSONNE 

WHERE personne_id NOT IN(SELECT personne_id FROM PERSONNE_MULTIVALUED WHERE personne_schema_attribut_id = 7) 

 AND personne_hidden=0 

</Query> 

   <Columns> 

       <Column> 

           <ObjectType/> 

           <Column_Link_Id/> 

           <Name/> 

           <DisplayName/> 

           <Visible/> 

           <DisplayIndex/> 

       </Column> 

       <Column> 

           <ObjectType/> 

           <Column_Link_Id/> 

           <Name>personne_uid</Name> 

           <DisplayName>UID</DisplayName> 

           <Visible>TRUE</Visible> 

           <DisplayIndex>1</DisplayIndex> 

       </Column> 

       <Column> 

           <Name>personne_display_name</Name> 

           <DisplayName>Nom</DisplayName> 

           <Visible>TRUE</Visible> 

           <DisplayIndex>2</DisplayIndex> 

       </Column> 

   </Columns> 

</Config>

XML žymės, aprašančios ataskaitos stulpelius

XML žymė Apibrėžtis Galimos reikšmės
Name Lauko pavadinimas, kaip jis apibrėžtas SQL užklausoje. Simbolių eilutė.
Column_Link_Id Naudojama kuriant stulpelius, kuriuose yra spustelėjamų duomenų. Atitinka stulpelio, kuriame yra saitui valdyti naudojamas ID, pavadinimą. Simbolių eilutė. Pasirinktinis
ObjectType Spustelėjamo saito tikslinio objekto tipas (Identity, struktūra). Identity = 1 => Peradresavimas į puslapį userDetails.aspx
Structure = 2 => Peradresavimas į puslapį structure.aspx
Pasirinktinis
DisplayName Sąsajoje rodomas stulpelio pavadinimas. Simbolių eilutė.
Visible Nurodo, ar stulpelis rodomas, ar paslėptas. 'TRUE' arba 'FALSE'
DisplayIndex Stulpelio indeksas (rodymo tvarka). Sveikasis skaičius, didesnis už 0

Vartotojo įvedamų parametrų įtraukimas į ataskaitą: žymė

Pažymėkite žymės langelį „With parameters“ ir į XML įtraukite šias žymes:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  <!-- Definition of the list of parameters expected by the report request.  --> 

   <Parameters> 

       <!-- Definition of a parameter (to be duplicated as many times as necessary) -->  

       <Parameter> 

           <!-- The name of the variable as defined in the query.  -->

           <Variable></Variable> 

           <!-- The label to display to the user.  -->  

           <Label></Label> 

           <!-- An integer indicating the expected data type (see documentation for possible values) -->  

           <DataType></DataType> 

           <!-- Indicates whether the user must specify a value of ‘TRUE’ or ‘FALSE’ --> 

           <Mandatory></Mandatory> 

           <!-- For optional parameters, the default value to be used if not entered by the user.  --> 

           <DefaultValue></DefaultValue> 

       </Parameter> 

   </Parameters> 

Pavyzdys: leidimai, kurių galiojimas netrukus baigsis

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<Query>DECLARE @DateNow AS DATETIME; SELECT @DateNow = GETDATE(); SELECT * FROM vHABILITATIONS_FULL WHERE (date_debut_lien IS NULL OR @DateNow > date_debut_lien) AND date_fin_lien IS NOT NULL AND ((0 = @ApplicationId) OR (application_id = @ApplicationId)) AND DATEADD(dd, @NbJours, @DateNow) > date_fin_lien ORDER BY date_fin_lien ASC</Query> 

 <Parameters> 

      <Parameter> 

           <Variable>ApplicationId</Variable> 

           <DataType>4</DataType> 

           <Mandatory>TRUE</Mandatory> 

           <Label>Selectionnez l'application</Label> 

       </Parameter> 

      <Parameter> 

           <Variable>NbJours</Variable> 

           <DataType>23</DataType> 

           <Mandatory>TRUE</Mandatory> 

           <Label>Sélectionnez le nombre de jour</Label> 

       </Parameter> 

   </Parameters> 

XML žymės, esančios <Parameter>, kuriomis aprašomi vartotojo įvedami parametrai:

XML žymė Apibrėžtis Galimos reikšmės
Variable SQL užklausoje naudojamo kintamojo pavadinimas (be @). Simbolių eilutė.
Data Type Parametrą atitinkantis CyberElements Identity objekto tipas. Jei tai nėra pagrindinis objekto tipas (data, eilutė, sveikasis skaičius ir kt.), parametras bus išplečiamasis sąrašas su galimomis reikšmėmis. Structure=2; Authorization Rule=3; Application=4; Repository=5; Right=8; StructureType=11; Tree=12; AdminProfile=18; PersonType=19; String=22; Integer=23; Boolean=24; Date=25.
Label Vartotojui rodoma etiketė. Simbolių eilutė.
AttributeCode PSA atributo kodas. PSA kodą atitinkanti simbolių eilutė.
Mandatory Nurodo, ar vartotojas privalo nurodyti reikšmę. 'TRUE' arba 'FALSE
DefaultValue Pasirinktiniams parametrams – numatytoji reikšmė, įrašoma, jei vartotojas nieko neįvedė. Simbolių eilutė.

Diagramų parametrų nustatymas

Išplečiamajame sąraše pasirinkite grafinį šabloną ir į XML įtraukite šias žymes:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<GraphicConfig> 

       <!-- The type of graph (1=Histogram, 2=Stacked histogram, 3=Pie chart, 4=Colored ball per threshold -->  

       <GraphicType>1</GraphicType> 

       <!-- Graph title (if not specified, the report name will be used -->  

       <Title></Title> 

       <!-- The query to use to retrieve the data that will be used to generate the graph -->

       <Query></Query> 

       <!-- The name of the query field that will serve as the x-axis --> 

       <ColumnX></ColumnX> 

       <!-- The name of the query field that will serve as the y-axis -->  

       <ColumnY></ColumnY> 

       <!-- The label of the x-axis -->  

       <LabelX>Label of column X</LabelX> 

       <!-- The label of the y-axis --> 

       <LabelY>Label of column Y</LabelY> 

       <!-- Indicates whether the graph is in 3 dimensions --> 

       <ThreeDimension>false</ThreeDimension> 

   </GraphicConfig>

Stacked histogram

Į žymę įterpkite šias žymes:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 <!-- 0 = each compiled block corresponds to a column of data (default value) --> 

       <!-- 1 = each compiled block corresponds to a grouping of data from a single column of data --> 

       <StackColumnMode></StackColumnMode> 

       <!-- Definition of the list of columns to stack. --> 

       <StackedColumns> 

           <!-- Definition of a column (to be duplicated as many times as necessary) -->  

           <StackedColumn> 

               <!--  StackColumnMode = 0: The name of the field that contains the data as defined in the query.  --> 

               <!--  StackColumnMode = 1: The name of the field that allows you to create stackable blocks. (YColumn contains the data) --> 

               <DataField></DataField> 

               <!-- The name to display to the user.  --> 

               <DisplayName></DisplayName> 

               <!-- Defines the color of the stacked block (HTML code or color name) --> 

               <Color></Color> 

           </StackedColumn> 

       </StackedColumns>

Spalvotas apskritimas pagal slenkstį

Į žymę įterpkite šias žymes:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!-- Definition of thresholds -->

       <Intervals> 

           <!-- Definition of a threshold (to be duplicated as many times as necessary) --> 

           <Interval> 

               <!-- Minimum threshold included --> 

               <Min></Min> 

               <!-- Maximum threshold excluded --> 

               <Max></Max> 

               <!-- Color of the ball for the defined threshold (HTML code or color name) -->

               <Color></Color> 

           </Interval> 

       </Intervals>

Ataskaitos stulpelių pavadinimų vertimas

Ataskaitos rezultatuose pateikiamus stulpelius ir reikšmes galima išversti į kelias kalbas.

Toliau pateikiamas ataskaitos, kurios stulpeliai išversti, pavyzdys:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<Config> 

   <DisplayGraphicInDashboard>True</DisplayGraphicInDashboard> 

   <DashboardDisplayIndex>5</DashboardDisplayIndex> 

   <GraphicConfig> 

       <GraphicType>1</GraphicType> 

       <Title>Nombre de personnes par application et type de compte</Title> 

       <Query>SELECT APPLICATION.application_nom + ' - ' + compte_type_nom as Administrateur, T_PERSONNE_APPLICATION_GROUPED.total FROM (SELECT application_id, compte_type_id, COUNT(*) AS total FROM (SELECT DISTINCT personne_id, vPERSONNE_COMPTE_DROIT.application_id, compte_type_id FROM vPERSONNE_COMPTE_DROIT INNER JOIN DROIT ON DROIT.droit_id = vPERSONNE_COMPTE_DROIT.droit_id) T_PERSONNE_APPLICATION GROUP BY application_id, compte_type_id) T_PERSONNE_APPLICATION_GROUPED INNER JOIN APPLICATION ON APPLICATION.application_id = T_PERSONNE_APPLICATION_GROUPED.application_id INNER JOIN COMPTE_TYPE ON COMPTE_TYPE.compte_type_id = T_PERSONNE_APPLICATION_GROUPED.compte_type_id ORDER BY total DESC</Query> 

       <ColumnX>Administrateur</ColumnX> 

       <LabelX>Nom de l'administrateur</LabelX> 

       <ColumnY>total</ColumnY> 

       <LabelY>Nombre de compte</LabelY> 

       <ThreeDimension>false</ThreeDimension> 

   </GraphicConfig> 

   <Query>SELECT APPLICATION.application_culture, APPLICATION.application_nom, compte_type.compte_type_nom, compte_type.compte_type_culture, T_PERSONNE_APPLICATION_GROUPED.total FROM (SELECT application_id, compte_type_id, COUNT(*) AS total FROM (SELECT DISTINCT personne_id, vPERSONNE_COMPTE_DROIT.application_id,  

compte_type_id FROM vPERSONNE_COMPTE_DROIT INNER JOIN DROIT ON DROIT.droit_id = vPERSONNE_COMPTE_DROIT.droit_id)  T_PERSONNE_APPLICATION GROUP BY application_id, compte_type_id) T_PERSONNE_APPLICATION_GROUPED  INNER JOIN APPLICATION ON APPLICATION.application_id = T_PERSONNE_APPLICATION_GROUPED.application_id INNER JOIN COMPTE_TYPE ON COMPTE_TYPE.compte_type_id = T_PERSONNE_APPLICATION_GROUPED.compte_type_id ORDER BY total DESC</Query> 

   <Columns> 

       <Column> 

           <Name>application_nom</Name> 

           <DisplayName>Application</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>1</DisplayIndex> 

           <Internationaldisplayname Lang="FR">Application_FR</internationaldisplayname> 

           <Internationaldisplayname Lang="EN">Application_EN</internationaldisplayname> 

           <CultureColumnName Prop="Name">application_culture</CultureColumnName>  

       </Column> 

      <Column> 

           <Name>compte_type_nom</Name> 

           <DisplayName>Compte type</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>2</DisplayIndex> 

          <Internationaldisplayname Lang="FR">Compte type</internationaldisplayname> 

           <Internationaldisplayname Lang="EN">Account type</internationaldisplayname> 

           <CultureColumnName Prop="Name">compte_type_culture</CultureColumnName>  

       </Column> 

       <Column> 

           <Name>total</Name> 

           <DisplayName>Nombre</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>3</DisplayIndex> 

           <internationaldisplayname Lang="FR">Nombre</internationaldisplayname> 

           <internationaldisplayname Lang="EN">Number</internationaldisplayname> 

       </Column> 

   </Columns> 

</Config>

XML žymė

  • Internationaldisplayname:
    • Apibrėžtis: žymė, naudojama ataskaitos grąžinamų stulpelių pavadinimams išversti. Šios žymės egzempliorių turi būti tiek, kiek kalbų sukonfigūruota CyberElements Identity.
    • Atributas: Lang=„<\language_code>“, kur <\language_code> – kalbos kodas, nustatytas kalbos parametruose skirtuke General > Application Settings.
    • Galima reikšmė: simbolių eilutė. Ataskaitoje šia kalba rodomas stulpelio pavadinimas.
  • CultureColumnName:
    • Apibrėžtis: kultūros XML apibrėžtis, naudojama ataskaitos sugeneruotos lentelės turiniui išversti.
    • Atributas: Prop=„<\XML_Attribute>“, kur <\XML_Attribute> – XML ypatybės atributas, atitinkantis skirtingas stulpelio reikšmes.
    • Galima reikšmė: simbolių eilutė. SQL užklausos kultūros stulpelis.

Ataskaitos rodymas pagal vartotojo kontekstą

Hpliance 4000 versijoje į ataskaitą galima įtraukti nematomą parametrą, kuris bus nustatomas pagal ataskaitą vykdantį asmenį. Ataskaitos reikšmės bus rodomos pagal vartotojo atributo reikšmes. Pavyzdžiui, asmuo matys tik savo organizacijos rezultatus.

Ataskaitos pavyzdys: išvardyti visus leidimus, priskirtus tam tikros struktūros tapatybėms. Rodyti visų tapatybių, kurių struktūros atributas „Responsibility“ atitinka prisijungusio vartotojo struktūros atributą, pavardes, vardus, leidimus ir taikomąsias programas.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
<Config> 

   <DirectDisplay>true</DirectDisplay> 

   <Query>select P.personne_id,P.personne_nom, P.personne_prenom, D.droit_nom, A.application_nom 

from vHABILITATIONS_ALL  AS VHA 

inner join LIEN_PERSONNE_STRUCTURE AS LPS ON LPS.personne_id = VHA.personne_id 

inner join DROIT AS D ON D.droit_id = VHA.droit_id 

inner join PERSONNE AS P ON P.personne_id = VHA.personne_id 

inner join APPLICATION AS A ON A.application_id = D.application_id 

where structure_id  in  

 (select * from dbo.fctSplitString(dbo.fctGetAttributeValueByPersonneIdAndPersonneSchemaAttributCode(@personneId, 'responsabilite'), '|')) 

 </Query> 

   <Columns> 

       <Column> 

           <Name>personne_id</Name> 

           <DisplayName>ID</DisplayName> 

           <Visible>False</Visible> 

           <DisplayIndex>1</DisplayIndex> 

       </Column> 

       <Column> 

           <Name>personne_nom</Name> 

           <DisplayName>Nom</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>2</DisplayIndex> 

           <ObjectType>1</ObjectType> 

           <Column_Link_Id>personne_id</Column_Link_Id> 

       </Column> 

       <Column> 

           <Name>personne_prenom</Name> 

           <DisplayName>Prénom</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>2</DisplayIndex> 

           <ObjectType>1</ObjectType> 

           <Column_Link_Id>personne_id</Column_Link_Id> 

       </Column> 

       <Column> 

           <Name>droit_nom</Name> 

           <DisplayName>Droit</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>3</DisplayIndex> 

       </Column> 

       <Column> 

           <Name>application_nom</Name> 

           <DisplayName>Application</DisplayName> 

           <Visible>True</Visible> 

           <DisplayIndex>4</DisplayIndex> 

       </Column> 

   </Columns> 

  <Parameters> 

       <Parameter> 

           <Variable>personneId</Variable> 

           <AttributUserConnected>True</AttributUserConnected> 

           <AttributeCode>personne_id</AttributeCode> 

      </Parameter> 

   </Parameters> 

</Config>

XML žymės, kuriomis aprašomi parametrai pagal vartotojo kontekstą.

  • Variable:
    • Apibrėžtis: SQL užklausoje naudojamo kintamojo pavadinimas (be @).
    • Galima reikšmė: simbolių eilutė.
  • AttributUserConnected:
    • Apibrėžtis: nurodo, ar parametras nustatomas pagal dabartinio vartotojo kontekstą, ar jį reikia įvesti rankiniu būdu sąsajoje.
    • Galima reikšmė:
      • True: vartotojo kontekstas
      • False: įvedimas rankiniu būdu
  • AttributeCode:
    • Apibrėžtis: PSA atributo kodas.
    • Galima reikšmė: PSA kodą atitinkanti simbolių eilutė.