Просмотр исходного кода

Merge branch 'master' of ssh://biuro.biall-net.pl:2222/plabudda/se

Mariusz Muszyński 8 лет назад
Родитель
Сommit
022b5d37c6
24 измененных файлов с 2279 добавлено и 698 удалено
  1. 1 1
      SE/projects/bocian
  2. 69 0
      SE/schema/WPS_Functions/csv2xml/csv2xml.xsl
  3. 56 7
      SE/schema/WPS_Functions/object_install_se_ant_object/build_object_install_se_ant_object.xsl
  4. 199 62
      SE/schema/WPS_Functions/stock_optimize_calculations_raszczyk/stock_optimize_calculations_raszczyk.xsl
  5. 67 47
      SE/schema/ant-object/default_db.BI_audit_CEIDG/BI_audit_CEIDG/BI_audit_CEIDG.xsd
  6. 150 0
      SE/schema/ant-object/default_db.BI_audit_ENERGA_FAKTURY/BI_audit_ENERGA_FAKTURY/BI_audit_ENERGA_FAKTURY.xsd
  7. 0 0
      SE/schema/ant-object/default_db.BI_audit_ENERGA_FAKTURY/BI_audit_ENERGA_FAKTURY/build.xml
  8. 99 36
      SE/schema/ant-object/default_db.BI_audit_ENERGA_PRACOWNICY/BI_audit_ENERGA_PRACOWNICY/BI_audit_ENERGA_PRACOWNICY.xsd
  9. 16 45
      SE/schema/ant-object/default_db.BI_audit_ENERGA_PRACOWNICY_group/BI_audit_ENERGA_PRACOWNICY_group/BI_audit_ENERGA_PRACOWNICY_group.xsd
  10. 88 62
      SE/schema/ant-object/default_db.BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd
  11. 267 139
      SE/schema/ant-object/default_db.BI_audit_ENERGA_RUM_UMOWY/BI_audit_ENERGA_RUM_UMOWY/BI_audit_ENERGA_RUM_UMOWY.xsd
  12. 35 8
      SE/schema/ant-object/default_db.BI_audit_KRS/BI_audit_KRS/BI_audit_KRS.xsd
  13. 55 0
      SE/schema/ant-object/default_db.BI_audit_taxpayer/BI_audit_taxpayer/BI_audit_taxpayer.xsd
  14. 0 0
      SE/schema/ant-object/default_db.BI_audit_taxpayer/BI_audit_taxpayer/build.xml
  15. 5 0
      SE/schema/default_db_xml_cache.public/build_ant_universal_by_xsl_match.xsl
  16. 55 9
      SE/schema/default_db_xml_cache.public/build_object_install_se_ant_object.xsl
  17. 7 80
      SE/schema/default_db_xml_cache.public/default_db/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_tree_to_dita.xsl
  18. 330 0
      SE/schema/default_db_xml_cache.public/default_db/Benford.xsl
  19. 477 13
      SE/schema/default_db_xml_cache.public/default_db/tree_to_dita.xsl
  20. 22 0
      SE/schema/default_db_xml_cache.public/get_all_xsd.xsl
  21. 19 4
      SE/schema/default_db_xml_cache.public/main_build_recurse_ant.dita_with_id.xsl
  22. 10 2
      SE/schema/default_db_xml_cache.public/system_cache__appinfo/external_schema_targetNamespace.xsl
  23. 66 3
      SE/se-lib/AntAclBase.php
  24. 186 180
      SE/se-lib/TableAjax.php

+ 1 - 1
SE/projects/bocian

@@ -1 +1 @@
-Subproject commit bc8a2f1d09838a39cb31d7695c9d6168586cfadb
+Subproject commit d90839515524b46d2e0cdb53c69f4a852dd1fbaa

+ 69 - 0
SE/schema/WPS_Functions/csv2xml/csv2xml.xsl

@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
+    exclude-result-prefixes="xs"
+    version="2.0">
+    
+    
+    <xsl:param name="csv2xml" required="yes"/>
+    <xsl:param name="input" required="yes"/>
+    <xsl:param name="output" required="yes"/>
+    <xsl:param name="basedir" required="yes"/>
+    
+    <xsl:output indent="yes"/>
+    <xsl:strip-space elements="*"/>
+    
+    <xsl:template match="csv2xml_dir">
+        <project basedir="{$basedir}" name="csv2xml_dir.child" default="csv2xml_dir.child.run">
+            <target name="csv2xml_dir.child.run">
+                <xsl:for-each select="tokenize(.,';')">
+                    <xsl:variable name="file" select="replace(.,' ','\\ ')"/>
+                    <xsl:variable name="file_out" select="replace(replace(.,' ','_'),'.csv','.xml')"/>
+                    <exec executable="bash"  >
+                        <!--<env key="PATH" path="$PATH:${PATH_ADD}"/>-->
+                        <arg value="-c"/>
+                        <arg value="{$csv2xml} &lt; {$input}/{$file} &gt; {$output}/{$file_out}"/>
+                    </exec>
+                </xsl:for-each>
+            </target>
+        </project>
+    </xsl:template>
+    
+    <xsl:template match="any2xml_dir">
+        <project basedir="{$basedir}" name="csv2xml_dir.child" default="csv2xml_dir.child.run">
+            <target name="csv2xml_dir.child.run">
+                <xsl:for-each select="tokenize(.,';')">
+                    <xsl:variable name="file" select="replace(.,' ',' ')"/>
+                    <xsl:variable name="file_out" select="concat(replace(.,' ','_'),'.xml')"/>
+                    
+                    <xsl:choose>
+                        <xsl:when test=" contains($file,'.xml')">
+                            <mkdir dir="{$output}/{$file_out}"/>
+                            <delete dir="{$output}/{$file_out}"/>
+                            <copy file="{$input}/{$file}" tofile="{$output}/{$file}"/>
+                        </xsl:when>
+                        <!--<xsl:when test="1 = 2"/>-->
+                        <xsl:otherwise>
+                            <loadfile property="{$file}" srcfile="{$input}/{$file}"/>
+                            <mkdir dir="{$output}/{$file_out}"/>
+                            <delete dir="{$output}/{$file_out}"/>
+                            
+                            <echoxml file="{$output}/{$file_out}" >
+                                <any2xml>
+                                    ${<xsl:value-of select="$file"/>}
+                                </any2xml>
+                            </echoxml>
+                        </xsl:otherwise>
+                    </xsl:choose>
+                    
+                </xsl:for-each>
+            </target>
+        </project>
+    </xsl:template>
+    
+    
+    
+    
+    
+    
+</xsl:stylesheet>

+ 56 - 7
SE/schema/WPS_Functions/object_install_se_ant_object/build_object_install_se_ant_object.xsl

@@ -33,10 +33,23 @@
         </system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external>
     </xsl:template>
    
-    <xsl:template match="system_cache__appinfo:get_all_xsd|system_cache__appinfo:get_all_xsd_external_schema" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external"/>
+    <xsl:template match="system_cache__appinfo:get_all_xsd_external_schema" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external"/>
         
    
-    <xsl:template match="system_cache__appinfo:get_all_xsd_external_schema_id_namespace_prefix" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external">
+    <xsl:template match="system_cache__appinfo:get_all_xsd[ schema/( 
+        @targetNamespace='http://biuro.biall-net.pl/xmlschema_procesy5/system_cache/graph_relation_elements.xsd' or
+        @targetNamespace='http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd' or
+        @targetNamespace='http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/p5_obj_vars.xsd'
+        or contains(@targetNamespace,'/default_db_xml_cache/')
+        or contains(@targetNamespace,'/system_cache/')
+        or contains(@targetNamespace,'/default_db/SystemObjects/')
+        ) or contains(@system_cache__appinfo:document-uri,'default_db_xml_cache.public/')]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:message>#44 bypassed @targetNamespace <xsl:value-of select="schema/@targetNamespace" xpath-default-namespace="http://www.w3.org/2001/XMLSchema"/></xsl:message>
+    </xsl:template>
+   
+    
+   
+    <xsl:template match="system_cache__appinfo:get_all_xsd_external_schema_id_namespace_prefix|system_cache__appinfo:get_all_xsd[xs:schema/@targetNamespace='https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd']" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external">
         <xsl:apply-templates mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external">
             <xsl:with-param name="system_cache__appinfo:document-uri-orig" select="@system_cache__appinfo:document-uri-orig"/>
         </xsl:apply-templates>
@@ -131,9 +144,7 @@
             </xsl:variable>
             <xsl:copy-of select="$schema"/>
             <xsl:comment>#123 saving to <xsl:value-of select="concat($external_schema_table.path,'/',$system_cache__appinfo:document-uri-orig,'/',$schema.prefix,'.xsd')"/></xsl:comment>
-            <xsl:result-document href="{ concat($external_schema_table.path,'/',$system_cache__appinfo:document-uri-orig,'/',$schema.prefix,'.xsd')}">
-                <xsl:copy-of select="$schema"/>
-            </xsl:result-document>
+            
             
             <xsl:message>#135 ant-object install - todo dependency, than install </xsl:message>
             <xsl:for-each select="$schema/schema/element" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
@@ -402,6 +413,25 @@
     
     
     
+    <xsl:template match="element|complexType[contains(@system_cache__appinfo:namespace_uri,$default_db_targetNamespace_detect_string)]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:param name="generate_tables_from_external_root.name" select="@name"/>
+        <xsl:param name="generate_tables_from_external_root.path" select="@name"/>
+        <xsl:param name="targetNamespace" required="yes"/>
+        <xsl:param name="prefix" required="yes"/>
+        <xsl:param name="prefix_root"  required="yes"/>
+        <xsl:param name="targetNamespace_root" required="yes"/>
+        
+        
+        <system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root>
+            <xsl:attribute name="generate_tables_from_external_root.name" select="$generate_tables_from_external_root.name"/>
+            <xsl:attribute name="generate_tables_from_external_root.path" select="$generate_tables_from_external_root.path"/>
+            <xsl:attribute name="prefix" select="$prefix"/>
+            <xsl:attribute name="targetNamespace" select="$targetNamespace"/>
+            <xsl:comment>#427 root element/complexType of $default_db_targetNamespace_detect_string(<xsl:value-of select="$default_db_targetNamespace_detect_string"/>) - we just copying without testing models in this @targetNamespace - To Be modified @2017-10-23</xsl:comment>
+            <xsl:copy-of select="."/>
+        </system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root>
+    </xsl:template>
+    
     <xsl:template match="element" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="generate_tables_from_external_root.name" select="@name"/>
         <xsl:param name="generate_tables_from_external_root.path" select="@name"/>
@@ -543,7 +573,7 @@
         </system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root>
     </xsl:template>-->
     
-    <xsl:template match="complexType[complexType/@name]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+    <xsl:template match="complexType[complexType/@name and not( contains(@system_cache__appinfo:namespace_uri,$default_db_targetNamespace_detect_string))]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="generate_tables_from_external_root.name" select="@name"/>
         <xsl:param name="generate_tables_from_external_root.path" select="@name"/>
         <xsl:param name="targetNamespace" required="yes"/>
@@ -776,6 +806,9 @@
     
     <xsl:template match="*|text()|comment()" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema"/>
     
+    <xsl:template match="documentation" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:copy-of select="."/>
+    </xsl:template>
     <xsl:template match="annotation|appinfo" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="targetNamespace" required="yes"/>
         <xsl:param name="prefix" required="yes"/>
@@ -1185,7 +1218,23 @@
         </xsl:element>
     </xsl:template>
     
-    <xsl:template match="*" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables">
+    <xsl:template match="element[ contains(.././@targetNamespace,$default_db_targetNamespace_detect_string)]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="../@*"/>
+            <xsl:copy-of select="@*"/>
+            <xsl:copy-of select="*"/>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="complexType[ contains(.././@targetNamespace,$default_db_targetNamespace_detect_string)]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="../@*"/>
+            <xsl:copy-of select="@*"/>
+            <xsl:copy-of select="*"/>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="*" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="generate_tables_from_external_root.required_by.path_init"/>
         <xsl:element name="{name()}">
             <xsl:copy-of select="../@*"/>

+ 199 - 62
SE/schema/WPS_Functions/stock_optimize_calculations_raszczyk/stock_optimize_calculations_raszczyk.xsl

@@ -20,7 +20,14 @@
     </xsl:variable>
     
     
-    <xsl:template match="Types__x3A__xlsx:main">
+    <xsl:variable name="cennik_2_sheet_name">
+        <cennik_2_sheet_name>
+            <sheet_source sheet_name="spacerowa">leclerc GD</sheet_source>
+            <sheet_source sheet_name="nowowiejska">leclerc GD</sheet_source>
+            <sheet_source sheet_name="Żeromskiego">leclerc GD</sheet_source>
+            <sheet_source sheet_name="polanki">leclerc GD</sheet_source>
+        </cennik_2_sheet_name>
+    </xsl:variable><xsl:template match="Types__x3A__xlsx:main">
         
         <RelatedFeatureRoot>
             <map title="raport przetwarzania Procesy5 A.Binder"
@@ -37,57 +44,29 @@
                  </xsl:variable>
                 
                 
-                <xsl:variable name="raszczyk_row_prod_local_sum">
+                <xsl:result-document href="temp/raszczyk_row_prod">
+                    <xsl:copy-of select="$raszczyk_row_prod"/>
+                </xsl:result-document><xsl:variable name="raszczyk_row_prod_local_sum">
                     <raszczyk_row_prod_local_sum>
-                        <xsl:apply-templates select="$raszczyk_row_prod" mode="raszczyk_row_prod_local_sum"/>
-                    </raszczyk_row_prod_local_sum>
+                        <xsl:apply-templates select="$raszczyk_row_prod" mode="raszczyk_row_prod_local_sum"><xsl:with-param name="raszczyk_row_prod" select="$raszczyk_row_prod"/>
+                    </xsl:apply-templates></raszczyk_row_prod_local_sum>
                 </xsl:variable>
                 
                  <!--<xsl:copy-of select="$raszczyk_row_prod"/>-->
                 <!--<xsl:copy-of select="$raszczyk_row_prod_local_sum"/>-->
                  
-                <xsl:apply-templates mode="raszczyk_row_prod_local_sum.errors" select="$raszczyk_row_prod_local_sum"/>
-                 
-                <topic id="topic_tabele_efektywnosci_4bb{generate-id()}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-                    xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
-                    <title>Sklepy efektywność tabela porownawcza</title>
-                    <body>
-                        <p>
-                            
-                        </p>
-                    </body>
-                    <xsl:apply-templates mode="SKLEPY_EFEKTYWNOSC_TABELE" select="$raszczyk_row_prod_local_sum"/>
-                </topic>
-                 
-                 <topic id="topic_x5j_mrk_4bb{generate-id()}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-                     xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
-                     <title>Sklepy efektywność wykresy</title>
-                     <body>
-                         <p>
-                             
-                         </p>
-                     </body>
-                     <xsl:apply-templates mode="SKLEPY_EFEKTYWNOSC" select="$raszczyk_row_prod_local_sum"/>
-                 </topic>
-            
-            
-                <topic id="topic_x5j_mrk_4baab{generate-id()}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-                    xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
-                    <title>Całość rapor wykresy</title>
-                    <body>
-                        <p>
-                            
-                        </p>
-                    </body>
-                    <xsl:apply-templates mode="CALOSC" select="$raszczyk_row_prod_local_sum"/>
-                </topic>
+                <xsl:result-document href="temp/raszczyk_row_prod_local_sum">
+                    <xsl:copy-of select="$raszczyk_row_prod_local_sum"></xsl:copy-of>
+                </xsl:result-document>
+                    <xsl:apply-templates mode="raszczyk_row_prod_local_sum.errors" select="$raszczyk_row_prod_local_sum"/><xsl:apply-templates mode="SKLEPY_EFEKTYWNOSC_TABELE" select="$raszczyk_row_prod_local_sum"/>
+                
             
             </map>
         </RelatedFeatureRoot>
     </xsl:template>
     
     
-    <xsl:template match="row[ Nazwa = Grupa ]" mode="raszczyk_row_prod_local_sum">
+    <xsl:template match="row[  lower-case(normalize-space(Nazwa)) =  lower-case(normalize-space(Grupa)) ]" mode="raszczyk_row_prod_local_sum">
         <xsl:message>#77 group ignored <xsl:value-of select="Grupa"/> = <xsl:value-of select="Nazwa"/></xsl:message>
     </xsl:template> <!-- ignore groups -->
     
@@ -138,23 +117,54 @@
     
     
     <xsl:template match="row" mode="raszczyk_row_prod_local_sum">
-        <row><xsl:copy-of select="@*"/>
+        <xsl:param name="raszczyk_row_prod" required="yes"/>
+        <xsl:variable name="Cena">
+            <xsl:choose>
+                <xsl:when test="$cennik_2_sheet_name//sheet_source[@sheet_name = current()/@sheet_name]">
+                    <xsl:variable name="sheet_source" select="$cennik_2_sheet_name//sheet_source[@sheet_name = current()/@sheet_name]/text()"/>
+                    <xsl:message>#158 ustawiam cennik dla <xsl:value-of select="@sheet_name"/> ; produkt <xsl:value-of select="Nazwa"/> , dla zrodla <xsl:value-of select="$sheet_source"/></xsl:message>
+                    <xsl:value-of select="$raszczyk_row_prod//row[@sheet_name = $sheet_source and Nazwa = current()/Nazwa ][1]/Cena"/>
+                </xsl:when>
+                <xsl:otherwise>
+                    <xsl:value-of select="Cena"/>
+                </xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>
+        
+        <xsl:variable name="Cena">
+            <xsl:choose>
+                <xsl:when test=" string-length($Cena)  &lt; 1 ">
+                    <xsl:message>#178 Nie bylo ceny na <xsl:value-of select="Nazwa"/> w cenniku doscelowym - ustalam cene x2 <xsl:value-of select="Cena * 2"/> </xsl:message>
+                    <xsl:value-of select="Cena * 2"/>
+                </xsl:when>
+                <xsl:otherwise><xsl:value-of select="$Cena"/></xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>
+        
+        <xsl:message>#166 ustalam cene na <xsl:value-of select="$Cena"/> - oryg <xsl:value-of select="Cena"/></xsl:message><row><xsl:copy-of select="@*"/>
         <xsl:apply-templates mode="raszczyk_row_prod_local_sum"/>
         <xsl:element name="wynik">
-            <xsl:value-of select="( Sprzed *  Cena ) - ( Il_zw * build_stock_optimize_calculations_raszczyk:koszt_wytworzenia(Nazwa) )  "/>
+            <xsl:value-of select="( ( Sprzed - Il_zw ) * ( $Cena - build_stock_optimize_calculations_raszczyk:koszt_wytworzenia_all(Nazwa)  )  ) - ( Il_zw * build_stock_optimize_calculations_raszczyk:koszt_wytworzenia(Nazwa) )  "/>
         </xsl:element>
         <xsl:element name="koszt_zwrotu">
             <xsl:value-of select="Il_zw * build_stock_optimize_calculations_raszczyk:koszt_wytworzenia(Nazwa)  "/>
         </xsl:element>
-            <xsl:element name="koszt_wytworzenia">
+            <xsl:element name="Cena_cennik">
+                <xsl:value-of select="$Cena"/>
+            </xsl:element>
+            <xsl:element name="wynik_bez_zwrotu">
+                <xsl:value-of select="( ( Sprzed - Il_zw ) * ( $Cena - build_stock_optimize_calculations_raszczyk:koszt_wytworzenia_all(Nazwa)  )  )   "/>
+            </xsl:element><xsl:element name="koszt_wytworzenia">
                 <xsl:value-of select="build_stock_optimize_calculations_raszczyk:koszt_wytworzenia(Nazwa)  "/>
             </xsl:element>
-        </row>
+        <xsl:element name="koszt_wytworzenia_sur_i_prac">
+                <xsl:value-of select="build_stock_optimize_calculations_raszczyk:koszt_wytworzenia_all(Nazwa)  "/>
+            </xsl:element></row>
     </xsl:template>
     
     <xsl:template match="raszczyk_row_prod" mode="raszczyk_row_prod_local_sum">
-            <xsl:apply-templates mode="raszczyk_row_prod_local_sum"/>
-    </xsl:template>
+            <xsl:param name="raszczyk_row_prod" required="yes"/><xsl:apply-templates mode="raszczyk_row_prod_local_sum"><xsl:with-param name="raszczyk_row_prod" select="$raszczyk_row_prod"/>
+    </xsl:apply-templates></xsl:template>
     
     <xsl:template match="*" mode="raszczyk_row_prod_local_sum">
             <xsl:copy-of select="."/>
@@ -428,10 +438,7 @@
     <xsl:template match="raszczyk_row_prod_local_sum" mode="SKLEPY_EFEKTYWNOSC_TABELE">
        
             
-            <topic id="topic_x5j_{generate-id()}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-                xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
-                <title>Tabela wyników dla produktów/sklepów (dla dwóch miesięcy na raz - todo rozdzielenie)  </title>
-                <body>
+            <xsl:variable name="row" select="row"/>
                     
                   <xsl:variable name="Grupy">
                       <Grupy>
@@ -443,7 +450,18 @@
                     
                     <!--<xsl:copy-of select="$Grupy"/>-->
                     
-                    <p><simpletable frame="all" id="simplet_sklep_able_56_{ generate-id()}">
+                    <topic id="topic_x5aaaj_{generate-id()}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+                xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
+                <title>Tabela wyników dla produktów/sklepów  (2) </title>
+                <body>
+                  
+                    <!--<xsl:copy-of select="$Grupy"/>-->
+                    
+                    
+                    <xsl:for-each-group select="row" group-by="@miesiac">
+                        <xsl:variable name="miesiac" select="@miesiac"/>
+                        <xsl:variable name="miesiac_group" select=" current-group()"/>
+                        <p>Miesiąc <xsl:value-of select="@miesiac"/></p><p><simpletable frame="all" id="simplet_sklep_ablMiese_{position()}_56_{ generate-id()}">
                         
                         <sthead>
                             <stentry>Sklep</stentry>
@@ -455,19 +473,19 @@
                             <stentry>suma</stentry>
                         </sthead>
                         
-                         <xsl:for-each-group select="row" group-by="@sheet_name">
+                         <xsl:for-each-group select="current-group()" group-by="@sheet_name">
                              <strow>
                                     <stentry>
                                         <xsl:value-of select="@sheet_name"/>
                                     </stentry>
-                                    <xsl:variable name="sheet_name" select="current-group()"/>
+                                    <xsl:variable name="sheet_name_group" select="current-group()"/>
                                     <xsl:for-each select="$Grupy/Grupy/Grupa">
                                        <stentry>
-                                           <xsl:value-of select="round(sum($sheet_name/wynik[ ../Grupa = current() and text()]))"/> <!-- [ ../Grupa = current()] -->
+                                           <xsl:value-of select="round(sum($sheet_name_group[Grupa = current()]/wynik[ text()]))"/> <!-- [ ../Grupa = current()] -->
                                        </stentry>
                                     </xsl:for-each>
                                        <stentry>
-                                           <xsl:value-of select="round(sum($sheet_name/wynik [text()]))"/>
+                                           <xsl:value-of select="round(sum( current-group()/wynik [ text()]))"/>
                                        </stentry>
                              </strow>
                             </xsl:for-each-group>
@@ -475,9 +493,9 @@
                             <stentry></stentry>
                             <xsl:for-each select="$Grupy/Grupy/Grupa" >
                                 <stentry>
-                                </stentry>
+                                <xsl:value-of select="round(sum( $miesiac_group [ Grupa = current()]/wynik [text()])) "/></stentry>
                             </xsl:for-each>
-                            <stentry><xsl:value-of select="format-number(sum(row/wynik [text()]),'#.####') "/></stentry>
+                            <stentry><xsl:value-of select="round(sum( current-group()/wynik[ text()])) "/></stentry>
                         </strow>
                         
                         
@@ -488,7 +506,109 @@
                     
                     
                     
+                </xsl:for-each-group>
+                    
+                            <!--<p><simpletable frame="all" id="simplet_sklep_able_56_{ generate-id()}">
+                                <sthead>
+                                    <stentry>Sklep</stentry>
+                                    <xsl:for-each select="$Grupy/Grupy/Grupa" >
+                                        <stentry>
+                                            <xsl:value-of select="."/>
+                                        </stentry>
+                                    </xsl:for-each>
+                                    <stentry>suma</stentry>
+                                </sthead>
+                                
+                                 <xsl:for-each-group select="row" group-by="@sheet_name">
+                                     <strow>
+                                            <stentry>
+                                                <xsl:value-of select="@sheet_name"/>
+                                            </stentry>
+                                            <xsl:variable name="sheet_name" select="current-group()"/>
+                                            <xsl:for-each select="$Grupy/Grupy/Grupa">
+                                               <stentry>
+                                                   <xsl:value-of select="round(sum($sheet_name/wynik[ ../Grupa = current() and text()]))"/> <!-\- [ ../Grupa = current()] -\->
+                                               </stentry>
+                                            </xsl:for-each>
+                                               <stentry>
+                                                   <xsl:value-of select="round(sum($sheet_name/wynik [text()]))"/>
+                                               </stentry>
+                                     </strow>
+                                    </xsl:for-each-group>
+                                <strow>
+                                    <stentry></stentry>
+                                    <xsl:for-each select="$Grupy/Grupy/Grupa" >
+                                        <stentry>
+                                        </stentry>
+                                    </xsl:for-each>
+                                    <stentry><xsl:value-of select="format-number(sum(row/wynik [text()]),'#.####') "/></stentry>
+                                </strow>
+                                
+                                
+                            </simpletable>
+                            </p>-->
+                    
                 </body>
+            <topic id="topic_x5jffas_{generate-id()}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+                    xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
+                    <title>Tabela sprzedazy dla produktów/sklepów  (2A) </title>  
+                    <body>
+                    <xsl:for-each-group select="row" group-by="@miesiac">
+                        <xsl:variable name="miesiac" select="@miesiac"/>
+                        <xsl:variable name="miesiac_group" select=" current-group()"/>
+                        <p>Miesiąc - Wart_sprzed  <xsl:value-of select="@miesiac"/></p>
+                        <p><simpletable frame="all" id="simplaaet_sklep_ablMissese_{position()}_56_{ generate-id()}">
+                            <sthead>
+                                <stentry>Sklep</stentry>
+                                <xsl:for-each select="$Grupy/Grupy/Grupa" >
+                                    <stentry>
+                                        <xsl:value-of select="."/>
+                                    </stentry>
+                                </xsl:for-each>
+                                <stentry>suma</stentry>
+                            </sthead>
+                            
+                            <xsl:for-each-group select="current-group()" group-by="@sheet_name"> <!-- [@sheet_name='real Gdynia'] -->
+                                <xsl:variable name="current_group" select="current-group()"/>
+                                <strow>
+                                    <stentry>
+                                        <xsl:value-of select="@sheet_name"/>
+                                    </stentry>
+                                    <xsl:variable name="sheet_name" select="@sheet_name"/>
+                                    <xsl:message>#661 anal dla <xsl:value-of select="$sheet_name"/> and miesiac <xsl:value-of select="$miesiac"/></xsl:message>
+                                    <xsl:for-each select="$Grupy/Grupy/Grupa">
+                                        <xsl:variable name="grupa" select="."/>
+                                        <stentry>
+                                            <!--<xsl:value-of select="round(sum(current-group()[ @miesiac = $miesiac and @sheet_name = $sheet_name  and   Grupa = $grupa ]/Wart_sprzed[ text()]))"/>--> <!-- [ ../Grupa = current()] -->
+                                            <xsl:value-of select="round(sum($current_group[ Grupa = $grupa ]/Wart_sprzed[ text()]))"/>
+                                            <!--<debug><xsl:copy-of select="$row[ @miesiac = $miesiac and @sheet_name = $sheet_name  and   Grupa = $grupa ]"></xsl:copy-of></debug>-->
+                                        </stentry>
+                                    </xsl:for-each>
+                                    <stentry>
+                                        <!--<xsl:value-of select="round(sum($row [  @miesiac = $miesiac and @sheet_name = $sheet_name  ]/Wart_sprzed [ text()] ))"/>-->
+                                        <xsl:value-of select="round(sum(current-group()/Wart_sprzed [ text()] ))"/>
+                                    </stentry>
+                                </strow>
+                            </xsl:for-each-group>
+                            <strow>
+                                <stentry></stentry>
+                                <!--<xsl:variable name="curr_gr" select="current-group()"/>-->
+                                <xsl:for-each select="$Grupy/Grupy/Grupa" >
+                                    <stentry>
+                                        <!--<xsl:value-of select="round(sum( $row [  @miesiac = $miesiac and ../Grupa = current()]/Wart_sprzed [text()])) "/>-->
+                                        <xsl:value-of select="round(sum( $miesiac_group [ Grupa = current()]/Wart_sprzed [text()])) "/>
+                                    </stentry>
+                                </xsl:for-each>
+                                <stentry><xsl:value-of select="round(sum(  current-group()/Wart_sprzed[text()]) div 1000 ) "/> kpln</stentry>
+                            </strow>
+                            
+                            
+                        </simpletable>
+                        </p>
+                    </xsl:for-each-group>
+                    </body>
+                </topic>
+                
             </topic>
             
             
@@ -819,11 +939,11 @@
                 <row>
                     <xsl:attribute name="sheet_name" select=" normalize-space($sheet_name)"/>
                     <xsl:choose>
-                        <xsl:when test="@r &lt; $row_month">
+                        <xsl:when test=" number(@r) &lt; number($row_month)">
                             <xsl:attribute name="miesiac" select="'biezacy'"/>
                         </xsl:when>
-                        <xsl:otherwise><xsl:attribute name="miesiac" select="'poprzedni'"/></xsl:otherwise>
-                    </xsl:choose>
+                        <xsl:when test="number(@r) &gt; number($row_month)"><xsl:attribute name="miesiac" select="'poprzedni'"/></xsl:when>
+                    <xsl:otherwise><xsl:message terminate="yes">#979 error with <xsl:copy-of select="@*"></xsl:copy-of> </xsl:message></xsl:otherwise></xsl:choose>
                     <xsl:attribute name="row_month" select="$row_month"/>
                     <xsl:attribute name="r" select="@r"/>
                     <xsl:variable name="c" select="c"/>
@@ -940,7 +1060,22 @@
     </xsl:function>
     
     
-    <xsl:template match="koszty_wytworzenia.csv" mode="build_stock_optimize_calculations_raszczyk:koszty_wytworzenia.xml" xpath-default-namespace="build_stock_optimize_calculations_raszczyk">
+    <xsl:function name="build_stock_optimize_calculations_raszczyk:koszt_wytworzenia_all">
+        <xsl:param name="Nazwa"/>
+        <xsl:message>#991 analyzing <xsl:value-of select="$Nazwa"/></xsl:message>
+        <xsl:choose>
+            <xsl:when test=" count($build_stock_optimize_calculations_raszczyk:koszty_wytworzenia.xml//row[Nazwa = $Nazwa]) &gt; 1">
+                <xsl:message>#993 PODWOJNA CENA KOSZTU DLA <xsl:value-of select="$Nazwa"/></xsl:message>
+                <xsl:value-of select="$build_stock_optimize_calculations_raszczyk:koszty_wytworzenia.xml//row[Nazwa = $Nazwa][1]/KOSZTYLACZNIE"/>
+            </xsl:when>
+            <xsl:when test="$build_stock_optimize_calculations_raszczyk:koszty_wytworzenia.xml//row[Nazwa = $Nazwa]/KOSZTYLACZNIE">
+                <xsl:value-of select="$build_stock_optimize_calculations_raszczyk:koszty_wytworzenia.xml//row[Nazwa = $Nazwa]/KOSZTYLACZNIE"/>
+            </xsl:when>
+            <xsl:otherwise>
+                <xsl:message>#993B Nie znany produkt <xsl:value-of select="$Nazwa"/></xsl:message>
+            </xsl:otherwise>
+        </xsl:choose>
+    </xsl:function><xsl:template match="koszty_wytworzenia.csv" mode="build_stock_optimize_calculations_raszczyk:koszty_wytworzenia.xml" xpath-default-namespace="build_stock_optimize_calculations_raszczyk">
         <koszty_wytworzenia.xml>
             <xsl:for-each select=" tokenize( text(),'\n')">
                 <row>
@@ -958,7 +1093,9 @@
                         <xsl:when test=" position()=4">
                             <KOSZTPRACY><xsl:value-of select="."/></KOSZTPRACY>
                         </xsl:when>
-                        <xsl:otherwise><col><xsl:value-of select="."/></col></xsl:otherwise>
+                        <xsl:when test=" position()=5">
+                            <KOSZTYLACZNIE><xsl:value-of select="."/></KOSZTYLACZNIE>
+                        </xsl:when><xsl:otherwise><col><xsl:value-of select="."/></col></xsl:otherwise>
                     </xsl:choose>
                     
                 </xsl:for-each>

+ 67 - 47
SE/schema/ant-object/default_db.BI_audit_CEIDG/BI_audit_CEIDG/BI_audit_CEIDG.xsd

@@ -1,63 +1,83 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2"
+   xmlns:Types__x3A__default_Default="https://biuro.biall-net.pl/wfs/default_db/Types/Default.xsd"
+   xmlns:default_db__x3A__IN7_DZIENNIK_KORESP="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+   xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
+   xmlns:default_db__x3A__ADMIN_USERS="https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd"
+   xmlns:default_db__x3A__IN7_MK_BAZA_DYSTRYBUCJI="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+   xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+   xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
    xmlns:default_db__x3A__BI_audit_CEIDG="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG.xsd"
-   xmlns:default_db__x3A__BI_audit_CEIDG_pelnomocnicy="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG_pelnomocnicy.xsd"
-   xmlns:default_db__x3A__BI_audit_CEIDG_powiazania="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG_powiazania.xsd"
+   xmlns:default_db__x3A__BI_audit_taxpayer="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_taxpayer.xsd"
+   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
-   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG.xsd"
-   vc:maxVersion="1.1" vc:minVersion="1.0">
-   <xs:import
-      namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG_pelnomocnicy.xsd"
-      schemaLocation="../../default_db.BI_audit_CEIDG_pelnomocnicy/BI_audit_CEIDG_pelnomocnicy/BI_audit_CEIDG_pelnomocnicy.xsd"/>
+   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG.xsd">
+   <xs:import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../Types/gml.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+      schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
    <xs:import
-      namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_CEIDG_powiazania.xsd"
-      schemaLocation="../../default_db.BI_audit_CEIDG_powiazania/BI_audit_CEIDG_powiazania/BI_audit_CEIDG_powiazania.xsd"/>
-   <xs:complexType name="BI_audit_CEIDG">
+      namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+      schemaLocation="../table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+      schemaLocation="../SystemObjects/AccessGroup.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+      schemaLocation="../SystemObjects/AccessOwner.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_taxpayer.xsd"
+      schemaLocation="../../../../../procesy5-dita-templates-druki/6872-bocian-energa-oferta-system-req/SCHEMA_FROM_P5_SYSTEM/BI_audit_taxpayer.xsd"/>
+   <xs:simpleType name="A_STATUS_Type" id="audit_CEIDG___d4e4630-1_A_STATUS_T">
+      <xs:restriction base="xs:string">
+         <xs:enumeration value="NORMAL"/>
+         <xs:enumeration value="WAITING"/>
+         <xs:enumeration value="MONITOR"/>
+         <xs:enumeration value="DELETED"/>
+         <xs:enumeration value="WARNING"/>
+         <xs:enumeration value="OFF_SOFT"/>
+         <xs:enumeration value="OFF_HARD"/>
+      </xs:restriction>
+   </xs:simpleType>
+   <xs:complexType name="BI_audit_CEIDG" id="audit_CEIDG___d4e4639-1_BI_audit_C">
       <xs:annotation>
-         <xs:documentation>Ogolny typ dla danych do sprawdzania wlascicieli</xs:documentation>
+         <xs:documentation>Tabela z Podmiotami z CEIDG</xs:documentation>
       </xs:annotation>
-      <xs:sequence>
-         <xs:element name="ID" type="xs:int"/>
-         <xs:element name="identyfikatorWpisu" type="xs:string"/>
-         <xs:element name="imie" type="xs:string"/>
-         <xs:element name="nazwisko" type="xs:string"/>
-         <xs:element name="nip" type="xs:long"/>
-         <xs:element name="regon" type="xs:long"/>
-         <xs:element name="firma" type="xs:string"/>
-         <xs:element name="miejscowosc" type="xs:string"/>
-         <xs:element name="ulica" type="xs:string"/>
-         <xs:element name="budynek" type="xs:string"/>
-         <xs:element name="lokal" type="xs:string"/>
-         <xs:element name="kodPocztowy" type="xs:string"/>
-         <xs:element name="poczta" type="xs:string"/>
-         <xs:element name="kraj" type="xs:string"/>
-         <xs:element name="gmina" type="xs:string"/>
-         <xs:element name="powiat" type="xs:string"/>
-         <xs:element name="wojewodztwo" type="xs:string"/>
-         <xs:element ref="default_db__x3A__BI_audit_CEIDG_pelnomocnicy:BI_audit_CEIDG_pelnomocnicy"
-            maxOccurs="unbounded" minOccurs="0">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_CEIDG_pelnomocnicy:BI_audit_CEIDG_pelnomocnicy/BI_audit_CEIDG"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-               <xs:documentation>Relacja podpieta z tamtej strony w polu BI_audit_CEIDG</xs:documentation>
-            </xs:annotation>
-         </xs:element>
-         <xs:element maxOccurs="unbounded" minOccurs="0"
-            ref="default_db__x3A__BI_audit_CEIDG_powiazania:BI_audit_CEIDG_powiazania">
+      <xs:sequence id="audit_CEIDG___d4e4640-1">
+         <xs:element name="ID" type="xs:integer" id="audit_CEIDG___d4e4665-1_ID"/>
+         <xs:element name="identyfikatorWpisu" type="xs:string"
+            id="audit_CEIDG___d4e4666-1_identyfika"/>
+         <xs:element name="imie" type="xs:string" id="audit_CEIDG___d4e4668-1_imie"/>
+         <xs:element name="nazwisko" type="xs:string" id="audit_CEIDG___d4e4669-1_nazwisko"/>
+         <xs:element name="nip" type="xs:integer" id="audit_CEIDG___d4e4670-1_nip"/>
+         <xs:element name="regon" type="xs:integer" id="audit_CEIDG___d4e4671-1_regon"/>
+         <xs:element name="firma" type="xs:string" id="audit_CEIDG___d4e4672-1_firma"/>
+         <xs:element name="miejscowosc" type="xs:string" id="audit_CEIDG___d4e4673-1_miejscowos"/>
+         <xs:element name="ulica" type="xs:string" id="audit_CEIDG___d4e4674-1_ulica"/>
+         <xs:element name="budynek" type="xs:string" id="audit_CEIDG___d4e4675-1_budynek"/>
+         <xs:element name="lokal" type="xs:string" id="audit_CEIDG___d4e4676-1_lokal"/>
+         <xs:element name="kodPocztowy" type="xs:string" id="audit_CEIDG___d4e4677-1_kodPocztow"/>
+         <xs:element name="poczta" type="xs:string" id="audit_CEIDG___d4e4678-1_poczta"/>
+         <xs:element name="kraj" type="xs:string" id="audit_CEIDG___d4e4680-1_kraj"/>
+         <xs:element name="gmina" type="xs:string" id="audit_CEIDG___d4e4681-1_gmina"/>
+         <xs:element name="powiat" type="xs:string" id="audit_CEIDG___d4e4682-1_powiat"/>
+         <xs:element name="wojewodztwo" type="xs:string" id="audit_CEIDG___d4e4683-1_wojewodztw"/>
+         <xs:element name="TERYT_SYM" type="xs:int" id="audit_CEIDG___d5e4677-1_TERYT_SYM"/>
+         <xs:element name="TERYT_SYM_UL" type="xs:int" id="audit_CEIDG___d5e4678-1_TERYT_SYM_"/>
+         <xs:element ref="default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer"
+            id="audit_CEIDG___d5e4680-1">
             <xs:annotation>
                <xs:appinfo>
                   <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_CEIDG_powiazania:BI_audit_CEIDG_powiazania/BI_audit_CEIDG"/>
+                     <system_cache__appinfo:source system_cache__appinfo:name="nip" system_cache__appinfo:xpath="default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer/nip"/>
                   </system_cache__appinfo:flat_relation_cache>
                </xs:appinfo>
-               <xs:documentation>Relacja podpieta z tamtej strony w polu BI_audit_CEIDG</xs:documentation>
+               <xs:documentation>Informacja o aktualnym płatniku VAT w tabeli referencyjnej
+                  (relacja nip do default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer/nip)</xs:documentation>
             </xs:annotation>
          </xs:element>
       </xs:sequence>
    </xs:complexType>
-   <xs:element name="BI_audit_CEIDG" type="default_db__x3A__BI_audit_CEIDG:BI_audit_CEIDG"/>
+   <xs:element name="BI_audit_CEIDG" type="default_db__x3A__BI_audit_CEIDG:BI_audit_CEIDG"
+      id="audit_CEIDG___d4e4684-1_BI_audit_C">
+      <xs:annotation>
+         <xs:documentation>Tabela z Podmiotami z CEIDG</xs:documentation>
+      </xs:annotation>
+   </xs:element>
 </xs:schema>

+ 150 - 0
SE/schema/ant-object/default_db.BI_audit_ENERGA_FAKTURY/BI_audit_ENERGA_FAKTURY/BI_audit_ENERGA_FAKTURY.xsd

@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2"
+   xmlns:Types__x3A__default_Default="https://biuro.biall-net.pl/wfs/default_db/Types/Default.xsd"
+   xmlns:default_db__x3A__IN7_DZIENNIK_KORESP="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+   xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
+   xmlns:default_db__x3A__ADMIN_USERS="https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd"
+   xmlns:default_db__x3A__IN7_MK_BAZA_DYSTRYBUCJI="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+   xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+   xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+   xmlns:default_db__x3A__BI_audit_ENERGA_FAKTURY="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_FAKTURY.xsd"
+   xmlns:default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"
+   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+   xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_FAKTURY.xsd">
+   <xs:import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../Types/gml.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+      schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
+   <xs:import
+      namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+      schemaLocation="../table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+      schemaLocation="../SystemObjects/AccessGroup.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+      schemaLocation="../SystemObjects/AccessOwner.xsd"/>
+   <xs:import
+      namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"
+      schemaLocation="BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"/>
+   <!--<xs:simpleType name="A_STATUS_Type" id="RGA_FAKTURY___d5e4813-1_A_STATUS_T">
+      <xs:restriction base="xs:string">
+         <xs:enumeration value="NORMAL"/>
+         <xs:enumeration value="WAITING"/>
+         <xs:enumeration value="MONITOR"/>
+         <xs:enumeration value="DELETED"/>
+         <xs:enumeration value="WARNING"/>
+         <xs:enumeration value="OFF_SOFT"/>
+         <xs:enumeration value="OFF_HARD"/>
+      </xs:restriction>
+   </xs:simpleType>-->
+   <xs:complexType name="BI_audit_ENERGA_FAKTURY" id="RGA_FAKTURY___d5e4822-1_BI_audit_E">
+      <xs:annotation>
+         <xs:documentation>Tabela do importu faktur w celu badania spójności z danymi z RUM</xs:documentation>
+      </xs:annotation>
+      <xs:sequence id="RGA_FAKTURY___d5e4823-1">
+         <xs:element name="ID" type="xs:integer" id="RGA_FAKTURY___d5e4825-1_ID"/>
+         <xs:element name="Nazwa" id="RGA_FAKTURY___d5e4826-1_Nazwa">
+            <xs:simpleType id="RGA_FAKTURY___d5e4827-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="35"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="NIP" id="RGA_FAKTURY___d5e4830-1_NIP">
+            <xs:simpleType id="RGA_FAKTURY___d5e4831-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="16"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="ulica" id="RGA_FAKTURY___d5e4834-1_ulica">
+            <xs:simpleType id="RGA_FAKTURY___d5e4835-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="35"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nr" id="RGA_FAKTURY___d5e4838-1_nr">
+            <xs:simpleType id="RGA_FAKTURY___d5e4839-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="10"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nrLokalu" id="RGA_FAKTURY___d5e4842-1_nrLokalu">
+            <xs:simpleType id="RGA_FAKTURY___d5e4843-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="10"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="kodPocztowy" id="RGA_FAKTURY___d5e4846-1_kodPocztow">
+            <xs:simpleType id="RGA_FAKTURY___d5e4847-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="10"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="miejscowosc" id="RGA_FAKTURY___d5e4850-1_miejscowos">
+            <xs:simpleType id="RGA_FAKTURY___d5e4851-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="40"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="Kwota_netto" type="xs:double" id="RGA_FAKTURY___d5e4854-1_Kwota_nett"/>
+         <xs:element name="Vat" type="xs:double" id="RGA_FAKTURY___d5e4855-1_Vat"/>
+         <xs:element name="Kwota_brutto" type="xs:double" id="RGA_FAKTURY___d5e4857-1_Kwota_brut"/>
+         <xs:element name="usluga" type="xs:string" id="RGA_FAKTURY___d5e4858-1_usluga"/>
+         <xs:element name="data_wystawienia" type="xs:date" id="RGA_FAKTURY___d5e4859-1_data_wysta"/>
+         <xs:element name="data_sprzedazy" type="xs:date" id="RGA_FAKTURY___d5e4860-1_data_sprze"/>
+         <xs:element name="jednostka_organizacyjna" id="RGA_FAKTURY___d5e4861-1_jednostka_">
+            <xs:simpleType id="RGA_FAKTURY___d5e4862-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="4"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="A_RECORD_CREATE_DATE" type="xs:dateTime"
+            id="RGA_FAKTURY___d5e4865-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_CREATE_AUTHOR" type="xs:string"
+            id="RGA_FAKTURY___d5e4866-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_UPDATE_DATE" type="xs:dateTime"
+            id="RGA_FAKTURY___d5e4867-1_A_RECORD_U"/>
+         <xs:element name="A_RECORD_UPDATE_AUTHOR" type="xs:string"
+            id="RGA_FAKTURY___d5e4868-1_A_RECORD_U"/>
+         <!--<xs:element name="L_APPOITMENT_DATE" type="xs:string"
+            id="RGA_FAKTURY___d5e4869-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_USER" type="xs:string"
+            id="RGA_FAKTURY___d5e4824-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_PERIOD" type="xs:string"
+            id="RGA_FAKTURY___d5e4870-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_INFO" type="xs:string"
+            id="RGA_FAKTURY___d5e4872-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_TYPE" type="xs:string"
+            id="RGA_FAKTURY___d5e4873-1_L_APPOITME"/>-->
+         <!--<xs:element name="A_STATUS" type="default_db__x3A__BI_audit_ENERGA_FAKTURY:A_STATUS_Type"
+            id="RGA_FAKTURY___d5e4874-1_A_STATUS"/>-->
+         <!--  <xs:element name="A_STATUS_INFO" type="xs:string" id="RGA_FAKTURY___d5e4875-1_A_STATUS_I"/>-->
+         <xs:element name="A_ADM_COMPANY" type="xs:string" id="RGA_FAKTURY___d5e4876-1_A_ADM_COMP"/>
+         <xs:element name="A_CLASSIFIED" type="xs:string" id="RGA_FAKTURY___d5e4877-1_A_CLASSIFI"/>
+         <xs:element
+            ref="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:BI_audit_ENERGA_RUM_KONTRAHENCI"
+            id="RGA_FAKTURY___d5e4879-1">
+            <xs:annotation>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="NIP" system_cache__appinfo:xpath="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:BI_audit_ENERGA_RUM_KONTRAHENCI/NIP"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
+            </xs:annotation>
+         </xs:element>
+      </xs:sequence>
+   </xs:complexType>
+   <xs:element name="BI_audit_ENERGA_FAKTURY"
+      type="default_db__x3A__BI_audit_ENERGA_FAKTURY:BI_audit_ENERGA_FAKTURY"
+      id="RGA_FAKTURY___d5e4878-1_BI_audit_E">
+      <xs:annotation>
+         <xs:documentation>Tabela do importu faktur w celu badania spójności z danymi z RUM</xs:documentation>
+      </xs:annotation>
+   </xs:element>
+</xs:schema>

+ 0 - 0
SE/schema/ant-object/default_db.BI_audit_ENERGA_FAKTURY/BI_audit_ENERGA_FAKTURY/build.xml


+ 99 - 36
SE/schema/ant-object/default_db.BI_audit_ENERGA_PRACOWNICY/BI_audit_ENERGA_PRACOWNICY/BI_audit_ENERGA_PRACOWNICY.xsd

@@ -9,10 +9,10 @@
    xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
    xmlns:default_db__x3A__BI_audit_ENERGA_PRACOWNICY="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_PRACOWNICY.xsd"
    xmlns:default_db__x3A__BI_audit_ENERGA_PRACOWNICY_group="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_PRACOWNICY_group.xsd"
+   xmlns:default_db__x3A__BI_audit_ENERGA_PRACOWNICY_adresy="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_PRACOWNICY_adresy.xsd"
    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
-   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_PRACOWNICY.xsd"
-   xmlns:default_db__x3A__BI_audit_ENERGA_PRACOWNICY_adresy="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_PRACOWNICY_adresy.xsd">
+   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_PRACOWNICY.xsd">
    <xs:import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../Types/gml.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
       schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
@@ -42,55 +42,118 @@
    </xs:simpleType>
    <xs:complexType name="BI_audit_ENERGA_PRACOWNICY" id="_PRACOWNICY___d4e4805-1_BI_audit_E">
       <xs:sequence id="_PRACOWNICY___d4e4806-1">
+         <xs:element name="ID" type="xs:integer" id="_PRACOWNICY___d4e4831-1_ID"/>
+         <xs:element name="imiona" id="_PRACOWNICY___d4e4832-1_imiona">
+            <xs:simpleType id="_PRACOWNICY___d5e4828-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="40"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nazwisko" id="_PRACOWNICY___d4e4834-1_nazwisko">
+            <xs:simpleType id="_PRACOWNICY___d5e4832-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="40"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="pesel" id="_PRACOWNICY___d4e4835-1_pesel">
+            <xs:simpleType id="_PRACOWNICY___d5e4836-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="11"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="ulica" id="_PRACOWNICY___d5e4839-1_ulica">
+            <xs:simpleType id="_PRACOWNICY___d5e4840-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="60"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nr" id="_PRACOWNICY___d5e4843-1_nrBudynku">
+            <xs:simpleType id="_PRACOWNICY___d5e4844-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="10"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nrLokalu" id="_PRACOWNICY___d5e4847-1_nrLokalu">
+            <xs:simpleType id="_PRACOWNICY___d5e4848-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="10"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="kodPocztowy" id="_PRACOWNICY___d5e4851-1_kodPocztow">
+            <xs:simpleType id="_PRACOWNICY___d5e4852-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="10"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="miejscowosc" id="_PRACOWNICY___d5e4855-1_miejscowos">
+            <xs:simpleType id="_PRACOWNICY___d5e4856-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="40"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nr_konta" id="_PRACOWNICY___d5e4859-1_nr_konta">
+            <xs:simpleType id="_PRACOWNICY___d5e4860-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="33"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="jednostka_organizacyjna" id="_PRACOWNICY___d5e4863-1_jednostka_">
+            <xs:simpleType id="_PRACOWNICY___d5e4864-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="4"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="nip" type="xs:string" id="_PRACOWNICY___d4e4836-1_nip"/>
+         <xs:element name="regon" type="xs:string" id="_PRACOWNICY___d4e4837-1_regon"/>
+         <xs:element name="source" type="xs:string" id="_PRACOWNICY___d5e4853-1_source"/>
+         <xs:element name="A_RECORD_CREATE_DATE" type="xs:dateTime"
+            id="_PRACOWNICY___d5e4871-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_CREATE_AUTHOR" type="xs:string"
+            id="_PRACOWNICY___d5e4872-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_UPDATE_DATE" type="xs:dateTime"
+            id="_PRACOWNICY___d5e4873-1_A_RECORD_U"/>
+         <xs:element name="A_RECORD_UPDATE_AUTHOR" type="xs:string"
+            id="_PRACOWNICY___d5e4874-1_A_RECORD_U"/>
+         <xs:element name="L_APPOITMENT_USER" type="xs:string"
+            id="_PRACOWNICY___d4e4813-1_L_APPOITME"/>
          <xs:element name="A_STATUS"
             type="default_db__x3A__BI_audit_ENERGA_PRACOWNICY:A_STATUS_Type"
             id="_PRACOWNICY___d4e4811-1_A_STATUS"/>
          <xs:element name="A_STATUS_INFO" type="xs:string" id="_PRACOWNICY___d4e4812-1_A_STATUS_I"/>
-         <xs:element name="L_APPOITMENT_USER" type="xs:string"
-            id="_PRACOWNICY___d4e4813-1_L_APPOITME"/>
-         <xs:element ref="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER"
-            id="_PRACOWNICY___d4e4814-1">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="L_APPOITMENT_USER" system_cache__appinfo:xpath="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>
+         <xs:element name="A_ADM_COMPANY" type="xs:string" id="_PRACOWNICY___d4e4825-1_A_ADM_COMP"/>
          <xs:element name="A_CLASSIFIED" type="xs:string" id="_PRACOWNICY___d4e4819-1_A_CLASSIFI"/>
-         <xs:element ref="SystemObjects__x3A__AccessGroup:A_CLASSIFIED" id="_PRACOWNICY___d4e4820-1">
-            <xs:annotation>
+         <xs:element maxOccurs="unbounded" minOccurs="0"
+            ref="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_adresy:BI_audit_ENERGA_PRACOWNICY_adresy"
+            id="_PRACOWNICY___d5e4854-1">
+            <!--<xs:annotation>
                <xs:appinfo>
                   <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_CLASSIFIED/name"/>
+                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_adresy:BI_audit_ENERGA_PRACOWNICY_adresy/TODO_FIX_REF_STD"/>
                   </system_cache__appinfo:flat_relation_cache>
                </xs:appinfo>
-            </xs:annotation>
+            </xs:annotation>-->
          </xs:element>
-         <xs:element name="A_ADM_COMPANY" type="xs:string" id="_PRACOWNICY___d4e4825-1_A_ADM_COMP"/>
-         <xs:element ref="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY"
-            id="_PRACOWNICY___d4e4826-1">
-            <xs:annotation>
+         <xs:element maxOccurs="unbounded" minOccurs="0"
+            ref="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_group:BI_audit_ENERGA_PRACOWNICY_group"
+            id="_PRACOWNICY___d5e16938-1">
+            <!--<xs:annotation>
                <xs:appinfo>
                   <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY/name"/>
+                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_group:BI_audit_ENERGA_PRACOWNICY_group/TODO_FIX_REF_STD"/>
                   </system_cache__appinfo:flat_relation_cache>
                </xs:appinfo>
-            </xs:annotation>
+            </xs:annotation>-->
          </xs:element>
-         <xs:element name="ID" type="xs:integer" id="_PRACOWNICY___d4e4831-1_ID"/>
-         <xs:element name="imiona" type="xs:string" id="_PRACOWNICY___d4e4832-1_imiona"/>
-         <xs:element name="nazwisko" type="xs:string" id="_PRACOWNICY___d4e4834-1_nazwisko"/>
-         <xs:element name="pesel" type="xs:string" id="_PRACOWNICY___d4e4835-1_pesel"/>
-         <xs:element name="nip" type="xs:string" id="_PRACOWNICY___d4e4836-1_nip"/>
-         <xs:element name="regon" type="xs:string" id="_PRACOWNICY___d4e4837-1_regon"/>
-         <xs:element name="source" type="xs:string"/>
-         <xs:element maxOccurs="unbounded" minOccurs="0"
-            ref="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_adresy:BI_audit_ENERGA_PRACOWNICY_adresy"/>
-         <xs:element maxOccurs="unbounded" minOccurs="0"
-            ref="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_group:BI_audit_ENERGA_PRACOWNICY_group"
-            id="_PRACOWNICY___d5e16938-1"/>
       </xs:sequence>
    </xs:complexType>
    <xs:element name="BI_audit_ENERGA_PRACOWNICY"

+ 16 - 45
SE/schema/ant-object/default_db.BI_audit_ENERGA_PRACOWNICY_group/BI_audit_ENERGA_PRACOWNICY_group/BI_audit_ENERGA_PRACOWNICY_group.xsd

@@ -21,7 +21,7 @@
       schemaLocation="../SystemObjects/AccessGroup.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
       schemaLocation="../SystemObjects/AccessOwner.xsd"/>
-   <xs:simpleType name="A_STATUS_Type" id="WNICY_group___d5e17002-1_A_STATUS_T">
+   <!--<xs:simpleType name="A_STATUS_Type" id="WNICY_group___d5e17002-1_A_STATUS_T">
       <xs:restriction base="xs:string">
          <xs:enumeration value="NORMAL"/>
          <xs:enumeration value="WAITING"/>
@@ -31,55 +31,22 @@
          <xs:enumeration value="OFF_SOFT"/>
          <xs:enumeration value="OFF_HARD"/>
       </xs:restriction>
-   </xs:simpleType>
+   </xs:simpleType>-->
    <xs:complexType name="BI_audit_ENERGA_PRACOWNICY_group" id="WNICY_group___d5e17011-1_BI_audit_E">
+      <xs:annotation>
+         <xs:documentation>Tabela do grupowania w raporcie powiązań pracowników. Każdy pracownik może być w jakiejś grupie.</xs:documentation>
+      </xs:annotation>
       <xs:sequence id="WNICY_group___d5e17012-1">
-         <xs:element name="the_geom" type="gml:AbstractFeatureType"
-            id="WNICY_group___d5e17013-1_the_geom">
-            <xs:annotation>
-               <xs:documentation>Dane geograficzne obiektu - linia, punkt, polygon</xs:documentation>
-            </xs:annotation>
-         </xs:element>
-         <xs:element name="A_STATUS"
+         <xs:element name="ID" type="xs:integer" id="WNICY_group___d5e17037-1_ID"/>
+         <xs:element name="source" type="xs:string" id="WNICY_group___d5e17038-1_source"/>
+         <!--<xs:element name="A_STATUS"
             type="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_group:A_STATUS_Type"
             id="WNICY_group___d5e17017-1_A_STATUS"/>
-         <xs:element name="A_STATUS_INFO" type="xs:string" id="WNICY_group___d5e17018-1_A_STATUS_I"/>
+         <xs:element name="A_STATUS_INFO" type="xs:string" id="WNICY_group___d5e17018-1_A_STATUS_I"/>-->
          <xs:element name="L_APPOITMENT_USER" type="xs:string"
             id="WNICY_group___d5e17019-1_L_APPOITME"/>
-         <xs:element ref="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER"
-            id="WNICY_group___d5e17020-1">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="L_APPOITMENT_USER" system_cache__appinfo:xpath="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>
          <xs:element name="A_CLASSIFIED" type="xs:string" id="WNICY_group___d5e17025-1_A_CLASSIFI"/>
-         <xs:element ref="SystemObjects__x3A__AccessGroup:A_CLASSIFIED"
-            id="WNICY_group___d5e17026-1">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_CLASSIFIED/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>
          <xs:element name="A_ADM_COMPANY" type="xs:string" id="WNICY_group___d5e17031-1_A_ADM_COMP"/>
-         <xs:element ref="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY"
-            id="WNICY_group___d5e17032-1">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>
-         <xs:element name="ID" type="xs:integer" id="WNICY_group___d5e17037-1_ID"/>
-         <xs:element name="source" type="xs:string" id="WNICY_group___d5e17038-1_source"/>
          <xs:element name="A_RECORD_CREATE_DATE" type="xs:token"
             id="WNICY_group___d5e17040-1_A_RECORD_C"/>
          <xs:element name="A_RECORD_CREATE_AUTHOR" type="xs:string"
@@ -88,17 +55,21 @@
             id="WNICY_group___d5e17043-1_A_RECORD_U"/>
          <xs:element name="A_RECORD_UPDATE_AUTHOR" type="xs:string"
             id="WNICY_group___d5e17044-1_A_RECORD_U"/>
-         <xs:element name="L_APPOITMENT_DATE" type="xs:string"
+        <!-- <xs:element name="L_APPOITMENT_DATE" type="xs:string"
             id="WNICY_group___d5e17045-1_L_APPOITME"/>
          <xs:element name="L_APPOITMENT_PERIOD" type="xs:string"
             id="WNICY_group___d5e17046-1_L_APPOITME"/>
          <xs:element name="L_APPOITMENT_INFO" type="xs:string"
             id="WNICY_group___d5e17047-1_L_APPOITME"/>
          <xs:element name="L_APPOITMENT_TYPE" type="xs:string"
-            id="WNICY_group___d5e17048-1_L_APPOITME"/>
+            id="WNICY_group___d5e17048-1_L_APPOITME"/>-->
       </xs:sequence>
    </xs:complexType>
    <xs:element name="BI_audit_ENERGA_PRACOWNICY_group"
       type="default_db__x3A__BI_audit_ENERGA_PRACOWNICY_group:BI_audit_ENERGA_PRACOWNICY_group"
-      id="WNICY_group___d5e17049-1_BI_audit_E"/>
+      id="WNICY_group___d5e17049-1_BI_audit_E">
+      <xs:annotation>
+         <xs:documentation>Tabela do grupowania w raporcie powiązań pracowników. Każdy pracownik może być w jakiejś grupie.</xs:documentation>
+      </xs:annotation>
+   </xs:element>
 </xs:schema>

+ 88 - 62
SE/schema/ant-object/default_db.BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd

@@ -1,17 +1,31 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2"
+   xmlns:Types__x3A__default_Default="https://biuro.biall-net.pl/wfs/default_db/Types/Default.xsd"
+   xmlns:default_db__x3A__IN7_DZIENNIK_KORESP="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+   xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
+   xmlns:default_db__x3A__ADMIN_USERS="https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd"
+   xmlns:default_db__x3A__IN7_MK_BAZA_DYSTRYBUCJI="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
    xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
    xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
    xmlns:default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"
+   xmlns:default_db__x3A__BI_audit_ENERGA_RUM_UMOWY="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_UMOWY.xsd"
+   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
-   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"
-   vc:maxVersion="1.1" vc:minVersion="1.0">
+   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd">
+   <xs:import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../Types/gml.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+      schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
+   <xs:import
+      namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+      schemaLocation="../table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
-      schemaLocation="../../../SystemObjects/AccessGroup.xsd"/>
+      schemaLocation="../SystemObjects/AccessGroup.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
-      schemaLocation="../../../SystemObjects/AccessOwner.xsd"/>
-   <xs:simpleType name="A_STATUS_Type">
+      schemaLocation="../SystemObjects/AccessOwner.xsd"/>
+   <xs:import
+      namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_UMOWY.xsd"
+      schemaLocation="BI_audit_ENERGA_RUM_UMOWY.xsd"/>
+   <xs:simpleType name="A_STATUS_Type" id="KONTRAHENCI___d4e4954-1_A_STATUS_T">
       <xs:restriction base="xs:string">
          <xs:enumeration value="NORMAL"/>
          <xs:enumeration value="WAITING"/>
@@ -22,22 +36,11 @@
          <xs:enumeration value="OFF_HARD"/>
       </xs:restriction>
    </xs:simpleType>
-   <xs:simpleType name="ownCompany_Type">
-      <xs:restriction base="xs:string">
-         <xs:enumeration value="Y"/>
-         <xs:enumeration value="N"/>
-      </xs:restriction>
-   </xs:simpleType>
-   <xs:complexType name="BI_audit_ENERGA_RUM_KONTRAHENCI">
-      <xs:annotation>
-         <xs:documentation>Kontrahenci Energa</xs:documentation>
-      </xs:annotation>
-      <xs:sequence>
-         <xs:element name="ID" type="xs:int"/>
-         <xs:element name="A_STATUS" type="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:A_STATUS_Type"/>
-         <xs:element name="A_STATUS_INFO" type="xs:string"/>
-         <xs:element name="L_APPOITMENT_USER" type="xs:string"/>
-<!--         <xs:element ref="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER">
+   <xs:complexType name="BI_audit_ENERGA_RUM_KONTRAHENCI" id="KONTRAHENCI___d4e4963-1_BI_audit_E">
+      <xs:sequence id="KONTRAHENCI___d4e4964-1">
+         <xs:element name="ID" type="xs:integer" id="KONTRAHENCI___d4e4989-1_ID"/>
+         <!--<xs:element ref="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER"
+            id="KONTRAHENCI___d4e4972-1">
             <xs:annotation>
                <xs:appinfo>
                   <system_cache__appinfo:flat_relation_cache>
@@ -46,52 +49,75 @@
                </xs:appinfo>
             </xs:annotation>
          </xs:element>-->
-         <xs:element name="A_CLASSIFIED" type="xs:string"/>
-<!--         <xs:element ref="SystemObjects__x3A__AccessGroup:A_CLASSIFIED">
+         <xs:element name="Tytul_dokumentu" type="xs:string" id="KONTRAHENCI___d4e4990-1_Tytul_doku"/>
+         <xs:element name="Dodano" type="xs:string" id="KONTRAHENCI___d4e4992-1_Dodano"/>
+         <xs:element name="Typ_kontrahenta" type="xs:string" id="KONTRAHENCI___d4e4993-1_Typ_kontra"/>
+         <xs:element name="Numer_kontrahenta" type="xs:integer"
+            id="KONTRAHENCI___d4e4994-1_Numer_kont"/>
+         <xs:element name="Nazwa_grupy_kapitalowej" type="xs:string"
+            id="KONTRAHENCI___d4e4995-1_Nazwa_grup"/>
+         <xs:element name="Podmiot_dominujacy" type="xs:string"
+            id="KONTRAHENCI___d4e4996-1_Podmiot_do"/>
+         <xs:element name="Pelna_nazwa_kontrahenta" type="xs:string"
+            id="KONTRAHENCI___d4e4997-1_Pelna_nazw"/>
+         <xs:element name="Skrocona_Nazwa_Kontrahenta" type="xs:string"
+            id="KONTRAHENCI___d4e4998-1_Skrocona_N"/>
+         <xs:element name="Forma_prawna_dzialalnosci" type="xs:string"
+            id="KONTRAHENCI___d4e4999-1_Forma_praw"/>
+         <xs:element name="NIP" type="xs:string" id="KONTRAHENCI___d4e5000-1_NIP"/>
+         <xs:element name="REGON" type="xs:string" id="KONTRAHENCI___d4e5001-1_REGON"/>
+         <xs:element name="PESEL" type="xs:string" id="KONTRAHENCI___d4e5002-1_PESEL"/>
+         <xs:element name="KRS" type="xs:int" id="KONTRAHENCI___d5e5110-1_KRS"/>
+         <xs:element name="Mail" type="xs:string" id="KONTRAHENCI___d4e5004-1_Mail"/>
+         <xs:element name="Fax" type="xs:string" id="KONTRAHENCI___d4e5005-1_Fax"/>
+         <xs:element name="Telefon" type="xs:string" id="KONTRAHENCI___d4e5006-1_Telefon"/>
+         <xs:element name="Kraj" type="xs:string" id="KONTRAHENCI___d4e5007-1_Kraj"/>
+         <xs:element name="Kod_pocztowy" type="xs:string" id="KONTRAHENCI___d4e5008-1_Kod_poczto"/>
+         <xs:element name="Miejscowosc" type="xs:string" id="KONTRAHENCI___d4e5009-1_Miejscowos"/>
+         <xs:element name="Ulica" type="xs:string" id="KONTRAHENCI___d4e5010-1_Ulica"/>
+         <xs:element name="Numer_budynku" type="xs:string" id="KONTRAHENCI___d4e5011-1_Numer_budy"/>
+         <xs:element name="Numer_mieszkania_lokalu" type="xs:string"
+            id="KONTRAHENCI___d4e5012-1_Numer_mies"/>
+         <xs:element name="uwagi" id="KONTRAHENCI___d5e5121-1_uwagi">
+            <xs:simpleType id="KONTRAHENCI___d5e5122-1">
+               <xs:restriction base="xs:string">
+                  <xs:maxLength value="255"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="ownCompany" id="KONTRAHENCI___d5e5125-1_ownCompany">
+            <xs:simpleType id="KONTRAHENCI___d5e5126-1">
+               <xs:restriction base="xs:string">
+                  <xs:enumeration value="Y"/>
+                  <xs:enumeration value="N"/>
+               </xs:restriction>
+            </xs:simpleType>
+         </xs:element>
+         <xs:element name="TERYT_SYM" type="xs:integer" id="KONTRAHENCI___d4e5013-1_TERYT_SYM"/>
+         <xs:element name="TERYT_SYM_UL" type="xs:integer" id="KONTRAHENCI___d4e5014-1_TERYT_SYM_"/>
+         <xs:element name="A_RECORD_CREATE_DATE" type="xs:dateTime"
+            id="KONTRAHENCI___d5e5114-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_CREATE_AUTHOR" type="xs:string"
+            id="KONTRAHENCI___d5e5115-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_UPDATE_DATE" type="xs:dateTime"
+            id="KONTRAHENCI___d5e5116-1_A_RECORD_U"/>
+         <xs:element name="A_RECORD_UPDATE_AUTHOR" type="xs:string"
+            id="KONTRAHENCI___d5e5117-1_A_RECORD_U"/>
+         <xs:element name="A_CLASSIFIED" type="xs:string" id="KONTRAHENCI___d4e4977-1_A_CLASSIFI"/>
+         <xs:element name="A_ADM_COMPANY" type="xs:string" id="KONTRAHENCI___d4e4983-1_A_ADM_COMP"/>
+         <xs:element ref="default_db__x3A__BI_audit_ENERGA_RUM_UMOWY:BI_audit_ENERGA_RUM_UMOWY"
+            id="KONTRAHENCI___d5ess5122-1">
             <xs:annotation>
                <xs:appinfo>
                   <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_CLASSIFIED/name"/>
+                     <system_cache__appinfo:source system_cache__appinfo:name="Skrocona_Nazwa_Kontrahenta" system_cache__appinfo:xpath="default_db__x3A__BI_audit_ENERGA_RUM_UMOWY:BI_audit_ENERGA_RUM_UMOWY/Kontrahenci"/>
                   </system_cache__appinfo:flat_relation_cache>
                </xs:appinfo>
             </xs:annotation>
-         </xs:element>-->
-         <xs:element name="A_ADM_COMPANY" type="xs:string"/>
-<!--         <xs:element ref="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>-->
-         <xs:element name="Tytul_dokumentu" type="xs:string"/>
-         <xs:element name="Dodano" type="xs:string"/>
-         <xs:element name="Typ_kontrahenta" type="xs:string"/>
-         <xs:element name="Numer_kontrahenta" type="xs:int"/>
-         <xs:element name="Nazwa_grupy_kapitalowej" type="xs:string"/>
-         <xs:element name="Podmiot_dominujacy" type="xs:string"/>
-         <xs:element name="Pelna_nazwa_kontrahenta" type="xs:string"/>
-         <xs:element name="Skrocona_Nazwa_Kontrahenta" type="xs:string"/>
-         <xs:element name="Forma_prawna_dzialalnosci" type="xs:string"/>
-         <xs:element name="NIP" type="xs:string"/>
-         <xs:element name="REGON" type="xs:string"/>
-         <xs:element name="PESEL" type="xs:string"/>
-         <xs:element name="KRS" type="xs:int"/>
-         <xs:element name="Mail" type="xs:string"/>
-         <xs:element name="Fax" type="xs:string"/>
-         <xs:element name="Telefon" type="xs:string"/>
-         <xs:element name="Kraj" type="xs:string"/>
-         <xs:element name="Kod_pocztowy" type="xs:string"/>
-         <xs:element name="Miejscowosc" type="xs:string"/>
-         <xs:element name="Ulica" type="xs:string"/>
-         <xs:element name="Numer_budynku" type="xs:string"/>
-         <xs:element name="Numer_mieszkania_lokalu" type="xs:string"/>
-         <xs:element name="uwagi" type="xs:string"/>
-         <xs:element name="ownCompany" type="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:ownCompany_Type"/>
+         </xs:element>
       </xs:sequence>
    </xs:complexType>
    <xs:element name="BI_audit_ENERGA_RUM_KONTRAHENCI"
-      type="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:BI_audit_ENERGA_RUM_KONTRAHENCI"/>
+      type="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:BI_audit_ENERGA_RUM_KONTRAHENCI"
+      id="KONTRAHENCI___d4e5015-1_BI_audit_E"/>
 </xs:schema>

+ 267 - 139
SE/schema/ant-object/default_db.BI_audit_ENERGA_RUM_UMOWY/BI_audit_ENERGA_RUM_UMOWY/BI_audit_ENERGA_RUM_UMOWY.xsd

@@ -1,21 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
-   xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
-   xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
-   xmlns:default_db__x3A__BI_audit_ENERGA_RUM_UMOWY="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_UMOWY.xsd"
-   xmlns:default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"
-   xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
-   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_UMOWY.xsd"
-   vc:maxVersion="1.1" vc:minVersion="1.0">
+           xmlns:gml="http://www.opengis.net/gml/3.2"
+           xmlns:Types__x3A__default_Default="https://biuro.biall-net.pl/wfs/default_db/Types/Default.xsd"
+           xmlns:default_db__x3A__IN7_DZIENNIK_KORESP="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+           xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
+           xmlns:default_db__x3A__ADMIN_USERS="https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd"
+           xmlns:default_db__x3A__IN7_MK_BAZA_DYSTRYBUCJI="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+           xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+           xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+           xmlns:default_db__x3A__BI_audit_ENERGA_RUM_UMOWY="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_UMOWY.xsd"
+           xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+           xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+           targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_UMOWY.xsd">
+   <xs:import namespace="http://www.opengis.net/gml/3.2"
+              schemaLocation="../Types/gml.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+              schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+              schemaLocation="../table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
-      schemaLocation="../../../SystemObjects/AccessGroup.xsd"/>
+              schemaLocation="../SystemObjects/AccessGroup.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
-      schemaLocation="../../../SystemObjects/AccessOwner.xsd"/>
-   <xs:import
-      namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"
-      schemaLocation="../../default_db.BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_KONTRAHENCI.xsd"/>
-   <xs:simpleType name="A_STATUS_Type">
+              schemaLocation="../SystemObjects/AccessOwner.xsd"/>
+   <xs:simpleType name="A_STATUS_Type" id="A_RUM_UMOWY___d4e5023-1_A_STATUS_T">
       <xs:restriction base="xs:string">
          <xs:enumeration value="NORMAL"/>
          <xs:enumeration value="WAITING"/>
@@ -26,132 +33,253 @@
          <xs:enumeration value="OFF_HARD"/>
       </xs:restriction>
    </xs:simpleType>
-   <xs:complexType name="BI_audit_ENERGA_RUM_UMOWY">
-      <xs:annotation>
-         <xs:documentation>Umowy Energa</xs:documentation>
-      </xs:annotation>
-      <xs:sequence>
-         <xs:element name="ID" type="xs:int"/>
-         <xs:element name="A_STATUS" type="default_db__x3A__BI_audit_ENERGA_RUM_UMOWY:A_STATUS_Type"/>
-         <xs:element name="A_STATUS_INFO" type="xs:string"/>
-         <xs:element name="L_APPOITMENT_USER" type="xs:string"/>
-<!--         <xs:element ref="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="L_APPOITMENT_USER" system_cache__appinfo:xpath="SystemObjects__x3A__AccessOwner:L_APPOITMENT_USER/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>-->
-         <xs:element name="A_CLASSIFIED" type="xs:string"/>
-<!--         <xs:element ref="SystemObjects__x3A__AccessGroup:A_CLASSIFIED">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_CLASSIFIED/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>-->
-         <xs:element name="A_ADM_COMPANY" type="xs:string"/>
-<!--         <xs:element ref="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY" system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:A_ADM_COMPANY/name"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-            </xs:annotation>
-         </xs:element>-->
-         <xs:element name="Tytul_dokumentu" type="xs:string"/>
-         <xs:element name="Typ_sprawy" type="xs:string"/>
-         <xs:element name="Numer_sprawy" type="xs:string"/>
-         <xs:element name="Data_utworzenia_sprawy" type="xs:string"/>
-         <xs:element name="Wprowadzajacy_wniosek___nazwisko_i_imie" type="xs:string"/>
-         <xs:element name="Status_sprawy" type="xs:string"/>
-         <xs:element name="Status_dokumentu" type="xs:string"/>
-         <xs:element name="Numer_inicjatywy_postepowania" type="xs:string"/>
-         <xs:element name="Akceptujacy_merytorycznie___nazwisko_i_imie" type="xs:string"/>
-         <xs:element name="Stanowisko_osoby_akceptujacej" type="xs:string"/>
-         <xs:element name="Jednostka" type="xs:string"/>
-         <xs:element name="Osoba_merytoryczna___nazwisko_i_imie" type="xs:string"/>
-         <xs:element name="Segment_spolki_glownej" type="xs:string"/>
-         <xs:element name="Koordynator_segmentu_spolki_glownej___login" type="xs:int"/>
-         <xs:element name="Spolka_bedaca_liderem_segmentu_spolki_glownej" type="xs:string"/>
-         <xs:element name="Spolka_glowna" type="xs:string"/>
-         <xs:element name="Koordynator_spolki_glownej___login" type="xs:string"/>
-         <xs:element name="Spolki_powiazane" type="xs:string"/>
-         <xs:element name="Spolki_powiazane_umowy_wykonawczej" type="xs:string"/>
-         <xs:element name="Kontrahenci_umowy_wykonawczej" type="xs:string"/>
-         <xs:element name="Strony_umowy" type="xs:string"/>
-         <xs:element name="Procedura_wyboru_kontrahenta" type="xs:string"/>
-         <xs:element name="Tryb_wyboru_kontrahenta" type="xs:string"/>
-         <xs:element name="Zgoda_korporacyjna" type="xs:string"/>
-         <xs:element name="Nazwa_grupy_kapitalowej" type="xs:string"/>
-         <xs:element name="Kontrahenci" type="xs:string"/>
-         <xs:element name="Czy_umowa_poufna" type="xs:string"/>
-         <xs:element name="Kategoria_umowy" type="xs:string"/>
-         <xs:element name="Przedmiot_umowy" type="xs:string"/>
-         <xs:element name="Czy_umowa_jest_zgodna_ze_standardem" type="xs:string"/>
-         <xs:element name="Sposob_zabezpieczenia" type="xs:string"/>
-         <xs:element name="Data_planowanego_zawarcia" type="xs:string"/>
-         <xs:element name="Data_zawarcia" type="xs:string"/>
-         <xs:element name="Okres_obowiazywania_umowy" type="xs:string"/>
-         <xs:element name="Poczatek_okresu_obowiazywania__aktualny_" type="xs:string"/>
-         <xs:element name="Poczatek_okresu_obowiazywania__pierwotny_" type="xs:string"/>
-         <xs:element name="Koniec_okresu_obowiazywania_umowy" type="xs:string"/>
-         <xs:element name="Koniec_okresu_obowiazywania" type="xs:string"/>
-         <xs:element name="Typ_umowy__aktualny_" type="xs:string"/>
-         <xs:element name="Slowa_kluczowe_okreslajace_umowe" type="xs:string"/>
-         <xs:element name="Numer_rejestrowy" type="xs:string"/>
-         <xs:element name="Numer_rejestrowy_u_Kontrahenta" type="xs:string"/>
-         <xs:element name="Wartosc_planowana_umowy_netto_w_walucie" type="xs:string"/>
-         <xs:element name="Waluta_planowana_umowy" type="xs:string"/>
-         <xs:element name="Wartosc_planowana_umowy_netto_w_PLN" type="xs:string"/>
-         <xs:element name="Wartosc_kredytu__aktualna_" type="xs:string"/>
-         <xs:element name="Wartosc_kredytu" type="xs:string"/>
-         <xs:element name="Wartosc_kosztowa_przedmiotu_umowy_netto_w_walucie__aktualna_" type="xs:string"/>
-         <xs:element name="Wartosc_kosztowa_przedmiotu_umowy_netto_w_walucie__pierwotna_" type="xs:string"/>
-         <xs:element name="Wartosc_przedmiotu_umowy_netto_w_PLN__aktualna_" type="xs:string"/>
-         <xs:element name="Wartosc_przedmiotu_umowy_netto_w_PLN__pierwotna_" type="xs:string"/>
-         <xs:element name="Waluta__aktualna_" type="xs:string"/>
-         <xs:element name="Waluta__pierwotna_" type="xs:string"/>
-         <xs:element name="Kurs__aktualny_" type="xs:int"/>
-         <xs:element name="Kurs__pierwotny_" type="xs:int"/>
-         <xs:element name="Wartosc_przedmiotu_umowy_netto_w_walucie__pierwotna_" type="xs:string"/>
-         <xs:element name="Podana_kwota_to__aktualna_" type="xs:string"/>
-         <xs:element name="Podana_kwota_to__pierwotna_" type="xs:string"/>
-         <xs:element name="Wartosc_wykorzystania_umowy_netto_w_PLN" type="xs:string"/>
-         <xs:element name="Rejestrujacy_w_RUM___nazwisko_i_imie" type="xs:string"/>
-         <xs:element name="Zatwierdzajacy_kompletnosc_w_RUM___imie_i_nazwisko" type="xs:string"/>
-         <xs:element name="Glowny_numer_rejestrowy" type="xs:string"/>
-         <xs:element name="Koordynator_segmentu_spolki_glownej___nazwisko_i_imie" type="xs:string"/>
-         <xs:element name="Uzasadnienie_zawarcia_umowy" type="xs:string"/>
-         <xs:element name="Czy_umowa_rozwiazana" type="xs:string"/>
-         <xs:element name="Przyczyna_rozwiazanie_umowy" type="xs:string"/>
-         <xs:element name="Komentarz_wprowadzajacego" type="xs:string"/>
-         <xs:element name="Komentarz_akceptujacego" type="xs:string"/>
-         <xs:element name="Wartosc_zlecenia_zamowienia_netto_w_PLN" type="xs:string"/>
-         <xs:element name="Wartosc_zlecenia_zamowienia_netto_w_walucie" type="xs:string"/>
-         <xs:element name="Wartosc_umowy_wykonawczej_w_PLN" type="xs:string"/>
-         <xs:element name="Wartosc_umowy_wykonawczej_w_walucie" type="xs:string"/>
-         <xs:element name="Data_obowiazywania_umowy_wykonawczej_od" type="xs:string"/>
-         <xs:element name="Data_obowiazywania_umowy_wykonawczej_do" type="xs:string"/>
-         <xs:element name="Wartosc" type="xs:double"/>
-         <xs:element ref="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:BI_audit_ENERGA_RUM_KONTRAHENCI"
-            maxOccurs="unbounded" minOccurs="0">
-            <xs:annotation>
-               <xs:appinfo>
-                  <system_cache__appinfo:flat_relation_cache>
-                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_ENERGA_RUM_KONTRAHENCI:BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_UMOWY"/>
-                  </system_cache__appinfo:flat_relation_cache>
-               </xs:appinfo>
-               <xs:documentation>Relacja do BI_audit_ENERGA_RUM_KONTRAHENCI</xs:documentation>
-            </xs:annotation>
-         </xs:element>
+   <xs:complexType name="BI_audit_ENERGA_RUM_UMOWY"
+                   id="A_RUM_UMOWY___d4e5032-1_BI_audit_E">
+      <xs:sequence id="A_RUM_UMOWY___d4e5033-1">
+         <xs:element name="ID" type="xs:integer" id="A_RUM_UMOWY___d4e5058-1_ID"/>
+         <xs:element name="Tytul_dokumentu"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5059-1_Tytul_doku"/>
+         <xs:element name="Typ_sprawy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5061-1_Typ_sprawy"/>
+         <xs:element name="Numer_sprawy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5062-1_Numer_spra"/>
+         <xs:element name="Data_utworzenia_sprawy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5063-1_Data_utwor"/>
+         <xs:element name="Wprowadzajacy_wniosek___nazwisko_i_imie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5064-1_Wprowadzaj"/>
+         <xs:element name="Status_sprawy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5065-1_Status_spr"/>
+         <xs:element name="Status_dokumentu"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5066-1_Status_dok"/>
+         <xs:element name="Numer_inicjatywy_postepowania"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5067-1_Numer_inic"/>
+         <xs:element name="Akceptujacy_merytorycznie___nazwisko_i_imie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5068-1_Akceptujac"/>
+         <xs:element name="Stanowisko_osoby_akceptujacej"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5069-1_Stanowisko"/>
+         <xs:element name="Jednostka"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5070-1_Jednostka"/>
+         <xs:element name="Osoba_merytoryczna___nazwisko_i_imie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5071-1_Osoba_mery"/>
+         <xs:element name="Segment_spolki_glownej"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5073-1_Segment_sp"/>
+         <xs:element name="Koordynator_segmentu_spolki_glownej___login"
+                     type="xs:integer"
+                     id="A_RUM_UMOWY___d4e5074-1_Koordynato"/>
+         <xs:element name="Spolka_bedaca_liderem_segmentu_spolki_glownej"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5075-1_Spolka_bed"/>
+         <xs:element name="Spolka_glowna"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5076-1_Spolka_glo"/>
+         <xs:element name="Koordynator_spolki_glownej___login"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5077-1_Koordynato"/>
+         <xs:element name="Spolki_powiazane"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5078-1_Spolki_pow"/>
+         <xs:element name="Spolki_powiazane_umowy_wykonawczej"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5079-1_Spolki_pow"/>
+         <xs:element name="Kontrahenci_umowy_wykonawczej"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5080-1_Kontrahenc"/>
+         <xs:element name="Strony_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5081-1_Strony_umo"/>
+         <xs:element name="Procedura_wyboru_kontrahenta"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5082-1_Procedura_"/>
+         <xs:element name="Tryb_wyboru_kontrahenta"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5083-1_Tryb_wybor"/>
+         <xs:element name="Zgoda_korporacyjna"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5085-1_Zgoda_korp"/>
+         <xs:element name="Nazwa_grupy_kapitalowej"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5086-1_Nazwa_grup"/>
+         <xs:element name="Kontrahenci"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5087-1_Kontrahenc"/>
+         <xs:element name="Czy_umowa_poufna"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5088-1_Czy_umowa_"/>
+         <xs:element name="Kategoria_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5089-1_Kategoria_"/>
+         <xs:element name="Przedmiot_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5090-1_Przedmiot_"/>
+         <xs:element name="Czy_umowa_jest_zgodna_ze_standardem"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5091-1_Czy_umowa_"/>
+         <xs:element name="Sposob_zabezpieczenia"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5092-1_Sposob_zab"/>
+         <xs:element name="Data_planowanego_zawarcia"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5093-1_Data_plano"/>
+         <xs:element name="Data_zawarcia"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5094-1_Data_zawar"/>
+         <xs:element name="Okres_obowiazywania_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5095-1_Okres_obow"/>
+         <xs:element name="Poczatek_okresu_obowiazywania__aktualny_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5097-1_Poczatek_o"/>
+         <xs:element name="Poczatek_okresu_obowiazywania__pierwotny_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5098-1_Poczatek_o"/>
+         <xs:element name="Koniec_okresu_obowiazywania_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5099-1_Koniec_okr"/>
+         <xs:element name="Koniec_okresu_obowiazywania"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5100-1_Koniec_okr"/>
+         <xs:element name="Typ_umowy__aktualny_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5101-1_Typ_umowy_"/>
+         <xs:element name="Slowa_kluczowe_okreslajace_umowe"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5102-1_Slowa_kluc"/>
+         <xs:element name="Numer_rejestrowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5103-1_Numer_reje"/>
+         <xs:element name="Numer_rejestrowy_u_Kontrahenta"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5104-1_Numer_reje"/>
+         <xs:element name="Wartosc_planowana_umowy_netto_w_walucie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5105-1_Wartosc_pl"/>
+         <xs:element name="Waluta_planowana_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5106-1_Waluta_pla"/>
+         <xs:element name="Wartosc_planowana_umowy_netto_w_PLN"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5107-1_Wartosc_pl"/>
+         <xs:element name="Wartosc_kredytu__aktualna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5109-1_Wartosc_kr"/>
+         <xs:element name="Wartosc_kredytu"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5110-1_Wartosc_kr"/>
+         <xs:element name="Wartosc_kosztowa_przedmiotu_umowy_netto_w_walucie__aktualna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5111-1_Wartosc_ko"/>
+         <xs:element name="Wartosc_kosztowa_przedmiotu_umowy_netto_w_walucie__pierwotna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5112-1_Wartosc_ko"/>
+         <xs:element name="Wartosc_przedmiotu_umowy_netto_w_PLN__aktualna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5113-1_Wartosc_pr"/>
+         <xs:element name="Wartosc_przedmiotu_umowy_netto_w_PLN__pierwotna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5114-1_Wartosc_pr"/>
+         <xs:element name="Waluta__aktualna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5115-1_Waluta__ak"/>
+         <xs:element name="Waluta__pierwotna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5116-1_Waluta__pi"/>
+         <xs:element name="Kurs__aktualny_"
+                     type="xs:integer"
+                     id="A_RUM_UMOWY___d4e5117-1_Kurs__aktu"/>
+         <xs:element name="Kurs__pierwotny_"
+                     type="xs:integer"
+                     id="A_RUM_UMOWY___d4e5118-1_Kurs__pier"/>
+         <xs:element name="Wartosc_przedmiotu_umowy_netto_w_walucie__pierwotna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5119-1_Wartosc_pr"/>
+         <xs:element name="Podana_kwota_to__aktualna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5121-1_Podana_kwo"/>
+         <xs:element name="Podana_kwota_to__pierwotna_"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5122-1_Podana_kwo"/>
+         <xs:element name="Wartosc_wykorzystania_umowy_netto_w_PLN"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5123-1_Wartosc_wy"/>
+         <xs:element name="Rejestrujacy_w_RUM___nazwisko_i_imie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5124-1_Rejestruja"/>
+         <xs:element name="Zatwierdzajacy_kompletnosc_w_RUM___imie_i_nazwisko"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5125-1_Zatwierdza"/>
+         <xs:element name="Glowny_numer_rejestrowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5126-1_Glowny_num"/>
+         <xs:element name="Koordynator_segmentu_spolki_glownej___nazwisko_i_imie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5127-1_Koordynato"/>
+         <xs:element name="Uzasadnienie_zawarcia_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5128-1_Uzasadnien"/>
+         <xs:element name="Czy_umowa_rozwiazana"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5129-1_Czy_umowa_"/>
+         <xs:element name="Przyczyna_rozwiazanie_umowy"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5130-1_Przyczyna_"/>
+         <xs:element name="Komentarz_wprowadzajacego"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5131-1_Komentarz_"/>
+         <xs:element name="Komentarz_akceptujacego"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5133-1_Komentarz_"/>
+         <xs:element name="Wartosc_zlecenia_zamowienia_netto_w_PLN"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5134-1_Wartosc_zl"/>
+         <xs:element name="Wartosc_zlecenia_zamowienia_netto_w_walucie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5135-1_Wartosc_zl"/>
+         <xs:element name="Wartosc_umowy_wykonawczej_w_PLN"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5136-1_Wartosc_um"/>
+         <xs:element name="Wartosc_umowy_wykonawczej_w_walucie"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5137-1_Wartosc_um"/>
+         <xs:element name="Data_obowiazywania_umowy_wykonawczej_od"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5138-1_Data_obowi"/>
+         <xs:element name="Data_obowiazywania_umowy_wykonawczej_do"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5139-1_Data_obowi"/>
+         <xs:element name="A_RECORD_CREATE_DATE"
+                     type="xs:dateTime"
+                     id="A_RUM_UMOWY___d5e5410-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_CREATE_AUTHOR"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d5e5411-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_UPDATE_DATE"
+                     type="xs:dateTime"
+                     id="A_RUM_UMOWY___d5e5413-1_A_RECORD_U"/>
+         <xs:element name="A_RECORD_UPDATE_AUTHOR"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d5e5414-1_A_RECORD_U"/>
+         <xs:element name="A_CLASSIFIED"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5046-1_A_CLASSIFI"/>
+         <xs:element name="A_ADM_COMPANY"
+                     type="xs:string"
+                     id="A_RUM_UMOWY___d4e5052-1_A_ADM_COMP"/>
       </xs:sequence>
    </xs:complexType>
    <xs:element name="BI_audit_ENERGA_RUM_UMOWY"
-      type="default_db__x3A__BI_audit_ENERGA_RUM_UMOWY:BI_audit_ENERGA_RUM_UMOWY"/>
+               type="default_db__x3A__BI_audit_ENERGA_RUM_UMOWY:BI_audit_ENERGA_RUM_UMOWY"
+               id="A_RUM_UMOWY___d4e5140-1_BI_audit_E"/>
 </xs:schema>

+ 35 - 8
SE/schema/ant-object/default_db.BI_audit_KRS/BI_audit_KRS/BI_audit_KRS.xsd

@@ -12,6 +12,7 @@
    xmlns:default_db__x3A__BI_audit_KRS_company="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_KRS_company.xsd"
    xmlns:default_db__x3A__BI_audit_KRS_PKD="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_KRS_PKD.xsd"
    xmlns:default_db__x3A__BI_audit_KRS_address="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_KRS_address.xsd"
+   xmlns:default_db__x3A__BI_audit_taxpayer="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_taxpayer.xsd"
    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
    targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_KRS.xsd"
@@ -34,6 +35,8 @@
       schemaLocation="BI_audit_KRS_PKD.xsd"/>
    <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_KRS_address.xsd"
       schemaLocation="BI_audit_KRS_address.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_taxpayer.xsd"
+      schemaLocation="../../../../../procesy5-dita-templates-druki/6872-bocian-energa-oferta-system-req/SCHEMA_FROM_P5_SYSTEM/BI_audit_taxpayer.xsd"/>
    <xs:simpleType name="A_STATUS_Type" id="I_audit_KRS___d4e4484-1_A_STATUS_T">
       <xs:restriction base="xs:string">
          <xs:enumeration value="NORMAL"/>
@@ -47,7 +50,7 @@
    </xs:simpleType>
    <xs:complexType name="BI_audit_KRS" id="I_audit_KRS___d4e4493-1_BI_audit_K">
       <xs:annotation>
-         <xs:documentation>Ogolny typ dla danych do sprawdzania wlascicieli</xs:documentation>
+         <xs:documentation>Tabela z podmiotami z KRS</xs:documentation>
       </xs:annotation>
       <xs:sequence id="I_audit_KRS___d4e4497-1">
          <xs:element name="ID" type="xs:int" id="I_audit_KRS___d4e4498-1_ID"/>
@@ -77,26 +80,50 @@
                      <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_KRS_person:BI_audit_KRS_person/BI_audit_KRS"/>
                   </system_cache__appinfo:flat_relation_cache>
                </xs:appinfo>
-               <xs:documentation>Relacja podpieta z tamtej strony w polu BI_audit_KRS</xs:documentation>
             </xs:annotation>
          </xs:element>
          <xs:element maxOccurs="unbounded" minOccurs="0"
             ref="default_db__x3A__BI_audit_KRS_company:BI_audit_KRS_company"
-            id="I_audit_KRS___d4e4546-1">
-            <xs:annotation>
+            id="I_audit_KRS___d4e4546-1"
+            ><!--<xs:annotation>
                <xs:appinfo>
                   <system_cache__appinfo:flat_relation_cache>
                      <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_KRS_company:BI_audit_KRS_company/BI_audit_KRS"/>
                   </system_cache__appinfo:flat_relation_cache>
                </xs:appinfo>
                <xs:documentation>Relacja podpieta z tamtej strony w polu BI_audit_KRS</xs:documentation>
-            </xs:annotation>
-         </xs:element>
+            </xs:annotation>--></xs:element>
          <xs:element maxOccurs="unbounded"
             ref="default_db__x3A__BI_audit_KRS_address:BI_audit_KRS_address"
-            id="I_audit_KRS___d5e17508-1"/>
+            id="I_audit_KRS___d5e17508-1"
+            ><!--<xs:annotation>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_KRS_address:BI_audit_KRS_address/TODO_FIX_BACKREF"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
+            </xs:annotation>--></xs:element>
          <xs:element maxOccurs="unbounded" ref="default_db__x3A__BI_audit_KRS_PKD:BI_audit_KRS_PKD"
-            id="I_audit_KRS___d5e17509-1"/>
+            id="I_audit_KRS___d5e17509-1"
+            ><!--<xs:annotation>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__BI_audit_KRS_PKD:BI_audit_KRS_PKD/TODO_FIX_BACKREF"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
+            </xs:annotation>--></xs:element>
+         <xs:element ref="default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer"
+            id="I_audit_KRS___d5e5495-1">
+            <xs:annotation>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="nip" system_cache__appinfo:xpath="default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer/nip"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
+               <xs:documentation>Informacja o aktualnym płatniku VAT w tabeli referencyjnej
+                  (relacja nip do default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer/nip)</xs:documentation>
+            </xs:annotation>
+         </xs:element>
          <xs:element name="TERYT_SYM" type="xs:integer" id="I_audit_KRS___d4e5219-1_TERYT_SYM"/>
          <xs:element name="TERYT_SYM_UL" type="xs:integer" id="I_audit_KRS___d4e5220-1_TERYT_SYM_"/>
       </xs:sequence>

+ 55 - 0
SE/schema/ant-object/default_db.BI_audit_taxpayer/BI_audit_taxpayer/BI_audit_taxpayer.xsd

@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2"
+   xmlns:Types__x3A__default_Default="https://biuro.biall-net.pl/wfs/default_db/Types/Default.xsd"
+   xmlns:default_db__x3A__IN7_DZIENNIK_KORESP="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+   xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
+   xmlns:default_db__x3A__ADMIN_USERS="https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd"
+   xmlns:default_db__x3A__IN7_MK_BAZA_DYSTRYBUCJI="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+   xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+   xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+   xmlns:default_db__x3A__BI_audit_taxpayer="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_taxpayer.xsd"
+   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+   xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/BI_audit_taxpayer.xsd">
+   <xs:import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../Types/gml.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+      schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
+   <xs:import
+      namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+      schemaLocation="../table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+      schemaLocation="../SystemObjects/AccessGroup.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+      schemaLocation="../SystemObjects/AccessOwner.xsd"/>
+   <xs:simpleType name="A_STATUS_Type" id="it_taxpayer___d5e6245-1_A_STATUS_T">
+      <xs:restriction base="xs:string">
+         <xs:enumeration value="NORMAL"/>
+         <xs:enumeration value="WAITING"/>
+         <xs:enumeration value="MONITOR"/>
+         <xs:enumeration value="DELETED"/>
+         <xs:enumeration value="WARNING"/>
+         <xs:enumeration value="OFF_SOFT"/>
+         <xs:enumeration value="OFF_HARD"/>
+      </xs:restriction>
+   </xs:simpleType>
+   <xs:complexType name="BI_audit_taxpayer" id="it_taxpayer___d5e6254-1_BI_audit_t">
+      <xs:annotation>
+         <xs:documentation>Tabela z aktualnymi statusami VAT</xs:documentation>
+      </xs:annotation>
+      <xs:sequence id="it_taxpayer___d5e6255-1">
+         <xs:element name="ID" type="xs:integer" id="it_taxpayer___d5e6256-1_ID"/>
+         <xs:element name="nip" type="xs:integer" id="it_taxpayer___d5e6257-1_nip"/>
+         <xs:element name="taxpayer_status" type="xs:string" id="it_taxpayer___d5e6258-1_taxpayer_s"/>
+         <xs:element name="taxpayer_status_date" type="xs:token"
+            id="it_taxpayer___d5e6259-1_taxpayer_s"/>
+         <xs:element name="taxpayer_status_info" type="xs:string"
+            id="it_taxpayer___d5e6260-1_taxpayer_s"/>
+      </xs:sequence>
+   </xs:complexType>
+   <xs:element name="BI_audit_taxpayer" type="default_db__x3A__BI_audit_taxpayer:BI_audit_taxpayer"
+      id="it_taxpayer___d5e6261-1_BI_audit_t">
+      <xs:annotation>
+         <xs:documentation>Tabela z aktualnymi statusami VAT</xs:documentation>
+      </xs:annotation>
+   </xs:element>
+</xs:schema>

+ 0 - 0
SE/schema/ant-object/default_db.BI_audit_taxpayer/BI_audit_taxpayer/build.xml


+ 5 - 0
SE/schema/default_db_xml_cache.public/build_ant_universal_by_xsl_match.xsl

@@ -32,6 +32,8 @@
     <!--<xsl:param name="external_schema_table.path" required="yes"/>-->
     
     
+    <xsl:param name="debug_level_param"/>
+
     <xsl:template mode="build_element_complexType.xml build_tr_map.xml" match="system_cache__appinfo:element_complexType"> <!-- for type generate in main build.xml mode -->
                 <project basedir="{$basedir}" name="{$antfile_prefix}" default="{$antfile_prefix}"
                     xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd">
@@ -88,7 +90,9 @@
             <param name="external_schema_table.path" >
                 <xsl:attribute name="expression" select="'${external_schema_table.path}'"/>
             </param>
+            <param name="debug_level_param" expression="{$debug_level_param}"/>
             <classpath location="/opt/local/share/java/saxon9he.jar"/>
+
         </xslt>
             <delete>
                 <xsl:attribute name="file" select="concat('${',with-param/@select,with-param/@name,'}')"/>
@@ -139,6 +143,7 @@
                 <param name="external_schema_table.path" >
                     <xsl:attribute name="expression" select="'${external_schema_table.path}'"/>
                 </param>
+                <param name="debug_level_param" expression="{$debug_level_param}"/>
                 <classpath location="/opt/local/share/java/saxon9he.jar"/>
             </xslt>
             <delete>

+ 55 - 9
SE/schema/default_db_xml_cache.public/build_object_install_se_ant_object.xsl

@@ -33,10 +33,23 @@
         </system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external>
     </xsl:template>
    
-    <xsl:template match="system_cache__appinfo:get_all_xsd|system_cache__appinfo:get_all_xsd_external_schema" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external"/>
+    <xsl:template match="system_cache__appinfo:get_all_xsd_external_schema" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external"/>
         
    
-    <xsl:template match="system_cache__appinfo:get_all_xsd_external_schema_id_namespace_prefix" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external">
+    <xsl:template match="system_cache__appinfo:get_all_xsd[ schema/( 
+        @targetNamespace='http://biuro.biall-net.pl/xmlschema_procesy5/system_cache/graph_relation_elements.xsd' or
+        @targetNamespace='http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd' or
+        @targetNamespace='http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/p5_obj_vars.xsd'
+        or contains(@targetNamespace,'/default_db_xml_cache/')
+        or contains(@targetNamespace,'/system_cache/')
+        or contains(@targetNamespace,'/default_db/SystemObjects/')
+        ) or contains(@system_cache__appinfo:document-uri,'default_db_xml_cache.public/')]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:message>#44 bypassed @targetNamespace <xsl:value-of select="schema/@targetNamespace" xpath-default-namespace="http://www.w3.org/2001/XMLSchema"/></xsl:message>
+    </xsl:template>
+   
+    
+   
+    <xsl:template match="system_cache__appinfo:get_all_xsd_external_schema_id_namespace_prefix|system_cache__appinfo:get_all_xsd[xs:schema/@targetNamespace='https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd']" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external">
         <xsl:apply-templates mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external">
             <xsl:with-param name="system_cache__appinfo:document-uri-orig" select="@system_cache__appinfo:document-uri-orig"/>
         </xsl:apply-templates>
@@ -131,9 +144,7 @@
             </xsl:variable>
             <xsl:copy-of select="$schema"/>
             <xsl:comment>#123 saving to <xsl:value-of select="concat($external_schema_table.path,'/',$system_cache__appinfo:document-uri-orig,'/',$schema.prefix,'.xsd')"/></xsl:comment>
-            <xsl:result-document href="{ concat($external_schema_table.path,'/',$system_cache__appinfo:document-uri-orig,'/',$schema.prefix,'.xsd')}">
-                <xsl:copy-of select="$schema"/>
-            </xsl:result-document>
+            
             
             <xsl:message>#135 ant-object install - todo dependency, than install </xsl:message>
             <xsl:for-each select="$schema/schema/element" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
@@ -402,7 +413,24 @@
     
     
     
-    <xsl:template match="element" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+    <xsl:template match="element|complexType[contains(@system_cache__appinfo:namespace_uri,$default_db_targetNamespace_detect_string)]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:param name="generate_tables_from_external_root.name" select="@name"/>
+        <xsl:param name="generate_tables_from_external_root.path" select="@name"/>
+        <xsl:param name="targetNamespace" required="yes"/>
+        <xsl:param name="prefix" required="yes"/>
+        <xsl:param name="prefix_root"  required="yes"/>
+        <xsl:param name="targetNamespace_root" required="yes"/>
+        
+        
+        <system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root>
+            <xsl:attribute name="generate_tables_from_external_root.name" select="$generate_tables_from_external_root.name"/>
+            <xsl:attribute name="generate_tables_from_external_root.path" select="$generate_tables_from_external_root.path"/>
+            <xsl:attribute name="prefix" select="$prefix"/>
+            <xsl:attribute name="targetNamespace" select="$targetNamespace"/>
+            <xsl:comment>#427 root element/complexType of $default_db_targetNamespace_detect_string(<xsl:value-of select="$default_db_targetNamespace_detect_string"/>) - we just copying without testing models in this @targetNamespace - To Be modified @2017-10-23</xsl:comment>
+            <xsl:copy-of select="."/>
+        </system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root>
+    </xsl:template><xsl:template match="element" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="generate_tables_from_external_root.name" select="@name"/>
         <xsl:param name="generate_tables_from_external_root.path" select="@name"/>
         <xsl:param name="targetNamespace" required="yes"/>
@@ -543,7 +571,7 @@
         </system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root>
     </xsl:template>-->
     
-    <xsl:template match="complexType[complexType/@name]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+    <xsl:template match="complexType[complexType/@name and not( contains(@system_cache__appinfo:namespace_uri,$default_db_targetNamespace_detect_string))]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_root" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="generate_tables_from_external_root.name" select="@name"/>
         <xsl:param name="generate_tables_from_external_root.path" select="@name"/>
         <xsl:param name="targetNamespace" required="yes"/>
@@ -776,7 +804,9 @@
     
     <xsl:template match="*|text()|comment()" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema"/>
     
-    <xsl:template match="annotation|appinfo" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+    <xsl:template match="documentation" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:copy-of select="."/>
+    </xsl:template><xsl:template match="annotation|appinfo" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_child.annotation" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="targetNamespace" required="yes"/>
         <xsl:param name="prefix" required="yes"/>
         <xsl:param name="prefix_root"  required="yes"/>
@@ -1185,7 +1215,23 @@
         </xsl:element>
     </xsl:template>
     
-    <xsl:template match="*" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables">
+    <xsl:template match="element[ contains(.././@targetNamespace,$default_db_targetNamespace_detect_string)]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="../@*"/>
+            <xsl:copy-of select="@*"/>
+            <xsl:copy-of select="*"/>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="complexType[ contains(.././@targetNamespace,$default_db_targetNamespace_detect_string)]" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="../@*"/>
+            <xsl:copy-of select="@*"/>
+            <xsl:copy-of select="*"/>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="*" mode="system_cache__appinfo:object_install_se_ant_object.generate_tables_from_external_mktables" xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
         <xsl:param name="generate_tables_from_external_root.required_by.path_init"/>
         <xsl:element name="{name()}">
             <xsl:copy-of select="../@*"/>

+ 7 - 80
SE/schema/default_db_xml_cache.public/default_db/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_tree_to_dita.xsl

@@ -289,28 +289,7 @@
                         </topichead>
                     </xsl:for-each-group>
                 </topichead>-->
-                <topichead navtitle="Powiązania do kontrahentów z którymi zawarto umowy (podział na źródła)(z wariantu porównawczego)">
-                    <xsl:for-each select="$sources/sources/source">
-                        <xsl:variable name="source" select="."/>
-                        <topichead navtitle="żródło: {.} - Powiązania do kontrahentów z którymi zawarto umowy">
-                            <xsl:for-each-group select="$resulset/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row[object[position() =  last()]/BI_audit_ENERGA_RUM_KONTRAHENCI and  object[position() = 1]/*/source= $source]" group-by="object[position() =  last()]/BI_audit_ENERGA_RUM_KONTRAHENCI/concat(ID,Pelna_nazwa_kontrahenta)">
-                                <xsl:variable name="group_name" select="object[position() = last() ]/* [ position() = 1]/system_cache__appinfo:truncate_special_and_do_uppercase(concat(ID,Pelna_nazwa_kontrahenta,position()))"/>
-                                
-                                <!--<topichead navtitle="{object[position() = last()]/*/concat(Pelna_nazwa_kontrahenta,' ',Miejscowosc,' ',NIP)} powiązań ({ count( current-group())}) ">-->
-                                <xsl:variable name="BI_audit_ENERGA_RUM_KONTRAHENCI.ID" select=" object[ position() = last()]/ BI_audit_ENERGA_RUM_KONTRAHENCI/ID"/>
-                                <xsl:choose>
-                                    <xsl:when test="//BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_old/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row/object[ position() = last()]/BI_audit_ENERGA_RUM_KONTRAHENCI/ID=$BI_audit_ENERGA_RUM_KONTRAHENCI.ID">
-                                        <xsl:apply-templates mode="BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row_do" select="current-group()[position() = 1]">
-                                            <xsl:with-param name="group_name" select="$group_name"/>
-                                            <xsl:with-param name="BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA" select="$BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA"/>
-                                        </xsl:apply-templates> 
-                                    </xsl:when>
-                                </xsl:choose>
-                                <!--</topichead>-->
-                            </xsl:for-each-group>
-                        </topichead>
-                    </xsl:for-each>
-                </topichead>
+                
                 
                 
                 
@@ -467,68 +446,16 @@
                     
                 </topichead>
                 
-                <topichead navtitle="Powiązania do wybranych podmiotów/kontrahentów (dla wariantu porównawczego)">
-                    <xsl:for-each select="$sources/sources/source">
-                        <xsl:variable name="source" select="."/>
-                        <topichead navtitle="żródło: {.} -(podział na spółki własne)  Powiązania wybranych podmiotów/kontrahentów">
-                            
-                            <xsl:for-each-group select="$resulset/BI_audit_ENERGA_RUM_KONTRAHENCI/BI_audit_ENERGA_RUM_UMOWY" group-by="Spolka_glowna">
-                                <xsl:variable name="spolka_glowna" select="Spolka_glowna[1]"/>
-                                
-                                
-                                <xsl:variable name="if_topic">
-                                    <xsl:message>#268 if topic for <xsl:value-of select="$spolka_glowna"/>;</xsl:message>
-                                    <xsl:for-each-group select="$interested_row/interested_row/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row[object[position() =  last()]/BI_audit_ENERGA_RUM_KONTRAHENCI and  object[position() = 1]/*/source= $source]" group-by="object[position() =  last()]/BI_audit_ENERGA_RUM_KONTRAHENCI/concat(ID,Pelna_nazwa_kontrahenta)">
-                                        <xsl:variable name="group_name" select="object[position() = last() ]/* [ position() = 1]/system_cache__appinfo:truncate_special_and_do_uppercase(concat(ID,Pelna_nazwa_kontrahenta,position()))"/>
-                                        <xsl:variable name="kontrahent_id" select="object[position() = last() ]/BI_audit_ENERGA_RUM_KONTRAHENCI/ID"/>
-                                        <xsl:variable name="current_group" select="current-group()"/>
-                                        <!--<xsl:variable name="zrodlo" select="."/>-->
-                                        <xsl:message>#346 kontr podzial go <xsl:value-of select="position()"/> / id: <xsl:value-of select="$kontrahent_id"/> / <xsl:value-of select="$spolka_glowna"/></xsl:message>
-                                        <xsl:variable name="BI_audit_ENERGA_RUM_KONTRAHENCI.ID" select=" object[ position() = last()]/ BI_audit_ENERGA_RUM_KONTRAHENCI/ID"/>
-                                        <!--<topichead navtitle="{object[position() = last()]/*/concat(Pelna_nazwa_kontrahenta,' ',Miejscowosc,' ',NIP)} powiązań ({ count( current-group())}) ">-->
-                                        
-                                        <xsl:for-each select="$resulset/BI_audit_ENERGA_RUM_KONTRAHENCI[ID=$kontrahent_id and BI_audit_ENERGA_RUM_UMOWY/Spolka_glowna=$spolka_glowna]">
-                                            <xsl:if test="$interested_row/interested_row/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row/object[ position() = last()]/BI_audit_ENERGA_RUM_KONTRAHENCI[ID = $kontrahent_id]">
-                                                <topicref href="{$group_name}_DO/1.dita"/>
-                                            </xsl:if>
-                                            
-                                        </xsl:for-each>
-                                    </xsl:for-each-group>
-                                </xsl:variable>
+                
                                 
                                 <xsl:choose>
-                                    <xsl:when test="$if_topic/*">
-                                        <topichead navtitle="żródło: {$source} spółka gł:{$spolka_glowna} ">
-                                            <xsl:message>#267 podzial spolka glowna: <xsl:value-of select="$spolka_glowna"/></xsl:message>
-                                            <xsl:for-each-group select="$interested_row/interested_row/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row[object[position() =  last()]/BI_audit_ENERGA_RUM_KONTRAHENCI and  object[position() = 1]/*/source= $source]" group-by="object[position() =  last()]/BI_audit_ENERGA_RUM_KONTRAHENCI/concat(ID,Pelna_nazwa_kontrahenta)">
-                                                <xsl:variable name="group_name" select="object[position() = last() ]/* [ position() = 1]/system_cache__dita:BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA.BI_audit_ENERGA_RUM_KONTRAHENCI.key(ID)"/>
-                                                <xsl:variable name="kontrahent_id" select="object[position() = last() ]/* [ position() = 1]/ID"/>
-                                                <xsl:variable name="current_group" select="current-group()"/>
-                                                <!--<xsl:variable name="zrodlo" select="."/>-->
-                                                
-                                                <xsl:variable name="BI_audit_ENERGA_RUM_KONTRAHENCI.ID" select=" object[ position() = last()]/ BI_audit_ENERGA_RUM_KONTRAHENCI/ID"/>
-                                                <!--<topichead navtitle="{object[position() = last()]/*/concat(Pelna_nazwa_kontrahenta,' ',Miejscowosc,' ',NIP)} powiązań ({ count( current-group())}) ">-->
-                                                
-
-                                                <xsl:for-each select="$resulset/BI_audit_ENERGA_RUM_KONTRAHENCI[ID=$kontrahent_id and BI_audit_ENERGA_RUM_UMOWY/Spolka_glowna=$spolka_glowna]">
-                                                    <xsl:message> #270 $kontrahent =<xsl:value-of select="$group_name"/></xsl:message>
-                                                    <xsl:if test="$interested_row/interested_row/BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row/object[ position() = last()]/BI_audit_ENERGA_RUM_KONTRAHENCI[ID = $kontrahent_id]">
-                                                        <topicref href="{$group_name}/{$group_name}.dita"/>
-                                                    </xsl:if>
-                                                </xsl:for-each>
-                                                
-                                                <!--</topichead>-->
-                                            </xsl:for-each-group>
-
-                                        </topichead>
-                                    </xsl:when>
+                                    <xsl:when test="BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_old">
+                        <topichead navtitle="Powiązania dla wariantu porównawczego raportów (dostępne, nie użyte)"/>
+                    </xsl:when>
+                                            <xsl:otherwise><topichead navtitle="Powiązania dla wariantu porównawczego raportów  (niedostępne w danych do raportu)"/></xsl:otherwise>
                                 </xsl:choose>
                                 
-                            </xsl:for-each-group>
-
-                        </topichead>
-                    </xsl:for-each>
-                </topichead>
+                            
                 
                 <topichead navtitle="Powiązania do kontrahentów z KRS ogólnie (podział na źródła)">
                     

+ 330 - 0
SE/schema/default_db_xml_cache.public/default_db/Benford.xsl

@@ -0,0 +1,330 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
+    xmlns:Benford="https://pl.wikipedia.org/wiki/Rozkład_Benforda"
+    xmlns:system_cache__dita="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/dita.xsd"
+    exclude-result-prefixes="xs"
+    version="2.0">
+    <!-- Template for analysis of https://pl.wikipedia.org/wiki/Rozkład_Benforda 
+        use this example to construct 
+        
+        
+        <Benford:table>
+           <xsl:attribute name="Benford:year" select="."/>
+           <xsl:attribute name="Benford:subject" select="$Osoba"/>
+               <xsl:for-each select="$BI_audit_ENERGA_RUM_UMOWY_fix//default_db:BI_audit_ENERGA_RUM_UMOWY[ lower-case(default_db:Osoba_merytoryczna___nazwisko_i_imie) = lower-case($Osoba)  and Data_zawarcia.rok = $rok_cur and not(Wartosc = '0' )]">
+                   <Benford:value><xsl:value-of select="substring( Wartosc,1,1)"/></Benford:value>
+               </xsl:for-each>
+        </Benford:table>
+        
+        than to analyze:
+        <xsl:if test="$Benford:table//Benford:value">
+            <xsl:apply-templates mode="Benford:table_analys" select="$Benford:table"/>
+        </xsl:if>
+        
+        expect:
+        
+        <Benford:table_analys_exceed Benford:year="2012"
+                                                  Benford:subject="Jan Npwak"
+                                                  Benford:digit="8"
+                                                  Benford:true.current.dig="5"
+                                                  Benford:current.dig.ratio="16"
+                                                  Benford:current.dig.test.fault="11"
+                                                  Benford:table_analys.dig.all.sum="37"/>
+                                                  
+          or:
+          
+         <Benford:table Benford:year="2011"
+              Benford:subject="Jan Nowak"
+              Benford:use_wider_period="#41 $Benford:table_analys not complete all numnbers used - use bigger period">
+                        <Benford:value>8</Benford:value>
+                        <Benford:value>5</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>6</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>1</Benford:value>
+                        <Benford:value>1</Benford:value>
+                        <Benford:value>6</Benford:value>
+                        <Benford:value>8</Benford:value>
+                        <Benford:value>8</Benford:value>
+                        <Benford:value>8</Benford:value>
+                        <Benford:value>9</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>6</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>0</Benford:value>
+                        <Benford:value>0</Benford:value>
+                     </Benford:table>
+        
+        which should be analyzed more wider - TODO example:
+    -->
+    
+    <xsl:param name="Benford:true.tolerance" select="10"/>
+    
+    <xsl:variable name="Benford:true">
+        <Benford:true>
+            <Benford:table_analys.dig Benford:digit="1" Benford:digit.occurs="{xs:double(30.1)}"/>
+            <Benford:table_analys.dig Benford:digit="2" Benford:digit.occurs="{xs:double(17.6)}"/>
+            <Benford:table_analys.dig Benford:digit="3" Benford:digit.occurs="{xs:double(12.5)}"/>
+            <Benford:table_analys.dig Benford:digit="4" Benford:digit.occurs="{xs:double(9.7)}"/>
+            <Benford:table_analys.dig Benford:digit="5" Benford:digit.occurs="{xs:double(7.9)}"/>
+            <Benford:table_analys.dig Benford:digit="6" Benford:digit.occurs="{xs:double(6.7)}"/>
+            <Benford:table_analys.dig Benford:digit="7" Benford:digit.occurs="{xs:double(5.8)}"/>
+            <Benford:table_analys.dig Benford:digit="8" Benford:digit.occurs="{xs:double(5.1)}"/>
+            <Benford:table_analys.dig Benford:digit="9" Benford:digit.occurs="{xs:double(4.6)}"/>
+        </Benford:true>
+    </xsl:variable>
+    
+    
+    
+    <xsl:template mode="Benford:table_analys" match="Benford:table">
+        <xsl:variable name="Benford:table" select="."/>
+        <!--<xsl:copy-of select="$Benford:table"></xsl:copy-of>-->
+        <xsl:variable name="Benford:table_analys">
+            <Benford:table_analys>
+                <xsl:copy-of select="@*"/>
+                <xsl:for-each select="1 to 9">
+                    <Benford:table_analys.dig>
+                        <xsl:attribute name="Benford:digit" select="."/>
+                        <xsl:attribute name="Benford:digit.occurs" select="count($Benford:table//Benford:value[ number(text()) = current()])"/>
+                    </Benford:table_analys.dig>
+                </xsl:for-each>
+            </Benford:table_analys>
+        </xsl:variable>
+        
+        <xsl:choose>
+            <xsl:when test="$Benford:table_analys//Benford:table_analys.dig[@Benford:digit.occurs = 0 ]">
+                <xsl:comment>#41 $Benford:table_analys not complete all numnbers used - use bigger period</xsl:comment>
+                <Benford:table>
+                    <xsl:copy-of select="$Benford:table/@*"/>
+                    <xsl:attribute name="Benford:use_wider_period" select="'#41 $Benford:table_analys not complete all numnbers used - use bigger period'"/>
+                    <xsl:copy-of select="*"/>
+                </Benford:table>
+            </xsl:when>
+            <xsl:otherwise>
+                <xsl:variable name="Benford:table_analys.dig.all.sum" select="sum($Benford:table_analys//Benford:table_analys.dig/@Benford:digit.occurs)"/>
+                <xsl:for-each select="$Benford:table_analys//Benford:table_analys.dig">
+                    <xsl:variable name="Benford:true.current.dig" select="$Benford:true//Benford:table_analys.dig[number(@Benford:digit) = current()/number(@Benford:digit)]/@Benford:digit.occurs" />
+                    <xsl:variable name="Benford:current.dig.ratio" select="number(@Benford:digit.occurs) div number($Benford:table_analys.dig.all.sum) * 100" />
+                    <xsl:variable name="Benford:current.dig.test.fault" select="abs(number($Benford:current.dig.ratio) - number($Benford:true.current.dig))" />
+                    <xsl:choose>
+                        <xsl:when test=" number($Benford:current.dig.test.fault) &gt; number($Benford:true.tolerance) ">
+                            <Benford:table_analys_exceed>
+                                <xsl:copy-of select="$Benford:table/@*"/>
+                                <xsl:attribute name="Benford:digit" select="@Benford:digit"/>
+                                <xsl:attribute name="Benford:true.current.dig" select="round($Benford:true.current.dig)"/>
+                                <xsl:attribute name="Benford:current.dig.ratio" select="round($Benford:current.dig.ratio)"/>
+                                <xsl:attribute name="Benford:current.dig.test.fault" select="round($Benford:current.dig.test.fault)"/>
+                                <xsl:attribute name="Benford:table_analys.dig.all.sum" select="$Benford:table_analys.dig.all.sum"/>
+                                <xsl:attribute name="Benford:current.dig.test.fault.rel" select="number($Benford:current.dig.ratio) - number($Benford:true.current.dig)"/>
+                            </Benford:table_analys_exceed>
+                        </xsl:when>
+                    </xsl:choose>
+                </xsl:for-each>
+            </xsl:otherwise>
+        </xsl:choose>
+    </xsl:template>
+    
+    <xsl:template match="*|text()|comment()" mode="system_cache__dita:topic"/>
+    
+    <!-- to generate dita topic based on Benford:table_analys_exceed - it will try to target data from parameter (deals etc)-->
+    <xsl:template match="Benford:table_analys_exceed" mode="system_cache__dita:topic">
+        <!-- input: <Benford:table_analys_exceed Benford:year="2012"
+                                                  Benford:subject="Jan Npwak"
+                                                  Benford:digit="8"
+                                                  Benford:true.current.dig="5"
+                                                  Benford:current.dig.ratio="16"
+                                                  Benford:current.dig.test.fault="11"
+                                                  Benford:table_analys.dig.all.sum="37"
+                                                  Benford:current.dig.test.fault.rel="-10"/>
+        -->
+        <xsl:param name="Benford:subject.xml" /> <!-- example "$BI_audit_ENERGA_RUM_UMOWY_fix//default_db:BI_audit_ENERGA_RUM_UMOWY"  -->
+        <xsl:param name="Benford:subject.value" /> <!-- to search against Benford:subject.xml for get value - example  'Wartosc' -->
+        
+        <xsl:param name="Benford:subject" /> <!-- example to search against Benford:subject.xml 'default_db:Osoba_merytoryczna___nazwisko_i_imie'  -->
+        <xsl:param name="Benford:year" /> <!-- to search against shorter period - example  'Data_zawarcia.rok' -->
+        <xsl:param name="Benford:subject.description" /> <!-- to search against Benford:subject.xml for get description - example  'default_db:Przedmiot_umowy default_db:Kontrahenci' -->
+        
+        <xsl:param name="topic.id"/>
+        <xsl:param name="simpletable.id"/>
+        <xsl:param name="id" select="concat('topic__Benford_table_analys_exceed',generate-id())"/>
+        <xsl:variable name="Benford:table_analys_exceed" select="."/>
+        
+        <topic id="{$id}" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            Benford:digit="{@Benford:digit}"
+            Benford:current.dig.test.fault="{@Benford:current.dig.test.fault}"
+            Benford:current.dig.test.fault.rel="{@Benford:current.dig.test.fault.rel}"
+            xsi:noNamespaceSchemaLocation="urn:oasis:names:tc:dita:xsd:topic.xsd">
+            
+            <xsl:message>#156 Wykryte anomalia Benford dla <xsl:value-of select="@Benford:subject"/> w <xsl:value-of select="@Benford:year"/> dla liczby <xsl:value-of select="@Benford:digit"/>  przekroczone o <xsl:value-of select="@Benford:current.dig.test.fault"/>, liczone dla <xsl:value-of select="@Benford:table_analys.dig.all.sum"/> pozycji.</xsl:message>
+            <xsl:choose>
+                <xsl:when test="$Benford:subject.xml and $Benford:subject.value "><!--<xsl:when test="$Benford:subject.xml and $Benford:subject and $Benford:year and $Benford:subject.value and $Benford:subject.description">-->
+                    <title>Wykryte anomalia Benford dla <xsl:value-of select="@Benford:subject"/> w <xsl:value-of select="@Benford:year"/> dla liczby <xsl:value-of select="@Benford:digit"/>   liczone dla <xsl:value-of select="@Benford:table_analys.dig.all.sum"/> pozycji.
+                        <!--Wartość: <xsl:value-of select="sum($Benford:subject.xml [ node()[name()=$Benford:subject] = $Benford:table_analys_exceed/@Benford:subject and substring(node()[name()=$Benford:subject.value],1,1)=$Benford:table_analys_exceed/@Benford:digit and  node()[name()=$Benford:year]=$Benford:table_analys_exceed/@Benford:year  ]/node()[name()=$Benford:subject.value])"/>-->
+                        Wartość: <xsl:value-of select="sum($Benford:subject.xml[substring(node()[name()=$Benford:subject.value],1,1)=$Benford:table_analys_exceed/@Benford:digit ] /node()[name()=$Benford:subject.value]) div 1000000"/> [mln]
+                        <xsl:if test="number(@Benford:current.dig.test.fault.rel) &lt; 0"> - Za mało obiektów o <xsl:value-of select="@Benford:current.dig.test.fault"/> %</xsl:if>
+                        <xsl:if test="number(@Benford:current.dig.test.fault.rel) &gt; 0"> - Przekroczenie ilości obiektów o <xsl:value-of select="@Benford:current.dig.test.fault"/> %</xsl:if>
+                    </title>
+                    <body>
+                        <p>
+                            <xsl:value-of select="@Benford:true.current.dig"/> - stała rozkładu dla  liczby <xsl:value-of select="@Benford:digit"/>.
+                        </p>
+                        <p>
+                            <xsl:value-of select="@Benford:current.dig.test.fault.rel"/> % - o ile za dużo / za mało jest danych
+                        </p>
+                        <p>
+                            <xsl:value-of select="round(sum($Benford:subject.xml/node()[name()=$Benford:subject.value]) div 1000000)"/> [mln] - ogólna wartość transakcji 
+                            
+                        </p>
+                        <p>
+                            <xsl:value-of select="count($Benford:subject.xml/node()[name()=$Benford:subject.value]) "/> -  ogólna ilość transakcji 
+                        </p>
+                        <p>
+                            <xsl:value-of select="round(sum($Benford:subject.xml[substring(node()[name()=$Benford:subject.value],1,1)=$Benford:table_analys_exceed/@Benford:digit ] /node()[name()=$Benford:subject.value]) div sum($Benford:subject.xml/node()[name()=$Benford:subject.value]) * 100 )"/> - % wartości trasnakcji z anomalią do ogółu (kwota) 
+                        </p>
+                        <p>
+                            <xsl:value-of select="count($Benford:subject.xml[substring(node()[name()=$Benford:subject.value],1,1)=$Benford:table_analys_exceed/@Benford:digit ] /node()[name()=$Benford:subject.value]) div count($Benford:subject.xml/node()[name()=$Benford:subject.value]) * 100 "/> -  % wartości trasnakcji z anomalią do ogółu (ilość) 
+                        </p>
+                        <simpletable frame="all"  relcolwidth="8* 1.0* 2*" id="topic__Benford_table_analys_exceed_simpletable_{ generate-id()}" > <!-- system_cache__dita:width_cols="auto" -->
+                            <sthead>
+                                <stentry>Dane obiektu </stentry>
+                                <stentry>Data</stentry>
+                                <stentry>Kwota</stentry>
+                            </sthead>
+                           
+                                <!--<xsl:for-each select="$Benford:subject.xml [ node()[name()=$Benford:subject] = $Benford:table_analys_exceed/@Benford:subject and substring(node()[name()=$Benford:subject.value],1,1)=$Benford:table_analys_exceed/@Benford:digit and  node()[name()=$Benford:year]=$Benford:table_analys_exceed/@Benford:year  ]">-->
+                                <xsl:for-each select="$Benford:subject.xml[substring(node()[name()=$Benford:subject.value],1,1)=$Benford:table_analys_exceed/@Benford:digit  ]">   
+                                    <strow>
+                                    <xsl:variable name="current" select="current()"/>
+                                        <stentry>
+                                            <!--<xsl:value-of select="current()/node()[name()='default_db:Numer_rejestrowy']"/>-->
+                                            <xsl:for-each select=" tokenize($Benford:subject.description,' ')">
+                                                <xsl:variable name="nname" select="."/>
+                                                <!--<xsl:comment>#171 checking for name '<xsl:value-of select="$nname"/>'</xsl:comment>-->
+                                                <p><xsl:value-of select="$nname"/>: <xsl:value-of select="$current//node()[name()=$nname]"/></p>
+                                            </xsl:for-each>
+                                        </stentry>
+                                        <stentry><xsl:value-of select="current()/node()[name()=$Benford:year]"/></stentry>
+                                        <stentry><xsl:value-of select="current()/node()[name()=$Benford:subject.value]"/></stentry>
+                                    </strow>
+                                </xsl:for-each>
+                            
+                        </simpletable>
+                    </body>
+                </xsl:when>
+                <xsl:when test="$topic.id and $simpletable.id">
+                    <title>Wykryte anomalia Benford dla <xsl:value-of select="@Benford:subject"/> w <xsl:value-of select="@Benford:year"/> dla liczby <xsl:value-of select="@Benford:digit"/>  przekroczone o <xsl:value-of select="@Benford:current.dig.test.fault"/>, liczone dla <xsl:value-of select="@Benford:table_analys.dig.all.sum"/> pozycji.</title>
+                    <body>
+                        <p><xsl:copy-of select="system_cache__dita:xref_2_topc($topic.id)"/></p>
+                    </body>
+                </xsl:when>
+            </xsl:choose>
+            
+        </topic>
+    </xsl:template>
+    
+    
+    <xsl:template match="topichead" mode="Benford:ditamap_root.embedded_map">
+        <xsl:apply-templates mode="Benford:ditamap_root.embedded_map"/>
+    </xsl:template>
+    
+    <xsl:template match="topic" mode="Benford:ditamap_root.embedded_map">
+        <xsl:message>#197 found topic <xsl:value-of select="@id"/></xsl:message>
+        <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.topic">
+            <xsl:with-param name="topic.id" select="@id"/>
+        </xsl:apply-templates>
+    </xsl:template>
+    
+    <xsl:template match="body|p" mode="Benford:ditamap_root.embedded_map.topic">
+        <xsl:param name="topic.id" required="yes"/>
+        <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.topic.body">
+            <xsl:with-param name="topic.id" select="$topic.id"/>
+        </xsl:apply-templates>
+    </xsl:template>
+    
+    <xsl:template match="simpletable" mode="Benford:ditamap_root.embedded_map.topic.body">
+        <xsl:param name="topic.id" required="yes"/>
+        <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.topic.body.simpletable">
+            <xsl:with-param name="topic.id" select="$topic.id"/>
+            <xsl:with-param name="simpletable.id" select="@id"/>
+        </xsl:apply-templates>
+    </xsl:template>
+    
+    <xsl:template match="strow|stentry" mode="Benford:ditamap_root.embedded_map.topic.body.simpletable">
+        <xsl:param name="topic.id" required="yes"/>
+        <xsl:param name="simpletable.id" required="yes"/>
+        <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.topic.body.simpletable">
+            <xsl:with-param name="topic.id" select="$topic.id"/>
+            <xsl:with-param name="simpletable.id" select="$simpletable.id"/>
+        </xsl:apply-templates>
+    </xsl:template>
+    
+    
+    
+    <xsl:template match="Benford:table_analys_exceed" mode="Benford:ditamap_root.embedded_map.topic.body.simpletable">
+        <xsl:param name="topic.id" required="yes"/>
+        <xsl:param name="simpletable.id" required="yes"/>
+        <xsl:apply-templates mode="system_cache__dita:topic" select=".">
+            <xsl:with-param name="topic.id" select="$topic.id"/>
+            <xsl:with-param name="simpletable.id" select="$simpletable.id"/>
+        </xsl:apply-templates>
+    </xsl:template>
+    
+    <xsl:template match="*" mode="Benford:ditamap_root.embedded_map">
+        <xsl:apply-templates mode="Benford:ditamap_root.embedded_map"/>
+    </xsl:template>
+    
+    <xsl:template match="text()|comment()" mode="Benford:ditamap_root.embedded_map"/>
+    
+    
+   
+    
+    <xsl:template match="*" mode="Benford:ditamap_root.embedded_map.body.topic.cleanup" >
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="@*"/>
+            <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.body.topic.cleanup"/>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="simpletable" mode="Benford:ditamap_root.embedded_map.body.topic.cleanup" >
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="@*"/>
+            <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.body.topic.cleanup.simpletable"/>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="strow|stentry|sthead|xref" mode="Benford:ditamap_root.embedded_map.body.topic.cleanup.simpletable" >
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="@*"/>
+            <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.body.topic.cleanup.simpletable"/>
+        </xsl:element>
+    </xsl:template>
+
+    <xsl:template match="topic" mode="Benford:ditamap_root.embedded_map.body.topic.cleanup.simpletable" >
+        <xsl:copy-of select="system_cache__dita:xref_2_topc(@id,concat('!(B',@Benford:digit,'/',round(@Benford:current.dig.test.fault.rel),')'))"/>
+    </xsl:template>
+    
+    
+    
+    <!--<xsl:template match="topic" mode="Benford:ditamap_root.embedded_map.body.topic.cleanup.simpletable"/>-->
+        
+    <xsl:template match="Benford:table|Benford:table_analys_exceed|Benford:value" mode="Benford:ditamap_root.embedded_map.body.topic.cleanup.simpletable" />
+    
+    
+    <xsl:template match="*" mode="Benford:ditamap_root.embedded_map.body.topicref.topic">
+        <xsl:for-each select=".//topic">
+            <xsl:apply-templates select="." mode="system_cache__dita:xref.topic.result-document"/>
+        </xsl:for-each>
+    </xsl:template>
+    
+    <xsl:template mode="ditamap_root.embedded_map.body" match="@Benford:value"/>
+    <xsl:template mode="system_cache__dita:xref.topic.result-document" match="@Benford:digit"/>
+    <xsl:template mode="system_cache__dita:xref.topic.result-document" match="@Benford:current.dig.test.fault|@Benford:current.dig.test.fault.rel"/>
+    
+    <!--<xsl:template mode="table_cut" match="@Benford:value" />-->
+    
+</xsl:stylesheet>

+ 477 - 13
SE/schema/default_db_xml_cache.public/default_db/tree_to_dita.xsl

@@ -138,13 +138,15 @@
     
     
     
+    <xsl:include href="Benford.xsl"/>
     <xsl:output indent="yes"/>
     <xsl:strip-space elements="*"/>
     
     <xsl:param name="temp" required="yes"/>
     <xsl:param name="uuid" required="yes"/>
     
-    <xsl:variable name="ditadir" select="concat($temp,'/',$uuid)"/>
+    <xsl:param name="system_cache__dita:pdf_a4_string_width" select="80"/> <!-- parameter for automate table width - how many letters fits in pdf output -->
+    <xsl:param name="system_cache__dita:simpletable.col.size" select="4"/><xsl:variable name="ditadir" select="concat($temp,'/',$uuid)"/>
     
     <xsl:template mode="preprocess" match="RelatedFeatureRoot">
         <preprocess_dita>
@@ -188,26 +190,40 @@
     <xsl:template match="map" mode="ditamap_root">
         <xsl:element name="{name()}">
             <xsl:copy-of select="@*"/>
-        <xsl:apply-templates mode="ditamap_root.embedded_map" />
+        <xsl:copy-of select="title"/><xsl:apply-templates mode="ditamap_root.embedded_map" />
+        <xsl:message>#196 in mode="ditamap_root" digging! </xsl:message></xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="topichead|xref" mode="ditamap_root.embedded_map">
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="@*"/>
+            <xsl:apply-templates mode="ditamap_root.embedded_map" />
         </xsl:element>
     </xsl:template>
     
-    <xsl:template match="topic" mode="ditamap_root.embedded_map">
+    <xsl:template mode="ditamap_root.embedded_map" match="@*"><xsl:copy-of select="."/></xsl:template><xsl:template match="topic" mode="ditamap_root.embedded_map">
         <topicref href="{@id}.dita">
-            <xsl:result-document href="{$temp}/{$uuid}/{@id}.dita">
+            <xsl:variable name="ditamap_root.embedded_map.body">
+                <xsl:apply-templates mode="ditamap_root.embedded_map.body"/>
+            </xsl:variable><xsl:result-document href="{$temp}/{$uuid}/{@id}.dita">
                 <xsl:element name="{name()}">
-                    <xsl:copy-of select="@*"/>
-                    <xsl:apply-templates mode="ditamap_root.embedded_map.body"/>
+                    <xsl:apply-templates mode="ditamap_root.embedded_map" select="@*"/>
+                    <!--<xsl:copy-of select="@*"/>-->
+                    <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.body.topic.cleanup" select="$ditamap_root.embedded_map.body"/>
                 </xsl:element>
             </xsl:result-document>
-            <xsl:apply-templates mode="ditamap_root.embedded_map" />
+            <xsl:apply-templates mode="Benford:ditamap_root.embedded_map.body.topicref.topic" select="$ditamap_root.embedded_map.body"/><xsl:apply-templates mode="ditamap_root.embedded_map" />
         </topicref>
     </xsl:template>
     
     
-    <xsl:template match="*" mode="ditamap_root.embedded_map.body">
+    <xsl:template mode="ditamap_root.embedded_map.body" match="@*">
+        <xsl:copy-of select="."/>
+    </xsl:template>
+    
+    <xsl:template mode="ditamap_root.embedded_map.body" match="@system_cache__dita:width_cols"/><xsl:template match="*" mode="ditamap_root.embedded_map.body">
         <xsl:element name="{name()}">
-            <xsl:copy-of select="@*"/>
+            <xsl:apply-templates select="@*" mode="ditamap_root.embedded_map.body"/>
             <xsl:apply-templates mode="ditamap_root.embedded_map.body"/>
         </xsl:element>
     </xsl:template>
@@ -228,14 +244,63 @@
     </xsl:template>
     
     
-    <xsl:template match="*" mode="preprocess_root.embedded_map.simpletable">
+    <xsl:template match="simpletable[ count(sthead/stentry) &gt; 6 ]" mode="ditamap_root.embedded_map.body">
+        <xsl:variable name="system_cache__dita:max_strings">
+            <xsl:call-template name="system_cache__dita:max_strings">
+                <xsl:with-param name="simpletable" select="."/>
+            </xsl:call-template>
+        </xsl:variable>
+        <!--<debug_Max>
+            <xsl:copy-of select="$system_cache__dita:max_strings"/>
+        </debug_Max>-->
+        <xsl:variable name="width_cols">
+            <xsl:choose>
+                <xsl:when test="@system_cache__dita:width_cols='auto'">
+                    <xsl:call-template name="system_cache__dita:width_cols.auto">
+                        <xsl:with-param name="simpletable" select="."/>
+                        <xsl:with-param name="max_strings" select="$system_cache__dita:max_strings"/>
+                    </xsl:call-template>
+                </xsl:when>
+                <xsl:when test="@system_cache__dita:width_cols"><xsl:value-of select="@system_cache__dita:width_cols"/></xsl:when>
+                <xsl:otherwise><xsl:value-of select="6"/></xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>
+        <xsl:variable name="header_cols">
+            <xsl:choose>
+                <xsl:when test="@system_cache__dita:header_cols"><xsl:value-of select="@system_cache__dita:width_cols"/></xsl:when>
+                <xsl:otherwise><xsl:value-of select="1"/></xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>
+        <!--<xsl:variable name="header_cols.relcolwidth">
+            <xsl:choose>
+                <xsl:when test="@system_cache__dita:header_cols.relcolwidth"><xsl:value-of select="@system_cache__dita:header_cols.relcolwidth"/></xsl:when>
+                <xsl:otherwise><xsl:value-of select="'2*'"/></xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>-->
+        <xsl:variable name="table_cut">
+            <xsl:apply-templates select="." mode="table_cut">
+                <xsl:with-param name="width_cols"  select="xs:integer($width_cols)"/>
+                <xsl:with-param name="header_cols" select="xs:integer($header_cols)"/>
+                <xsl:with-param name="start_row"  select="1"/>
+                <xsl:with-param name="start_col"  select="1"/>
+                <!--<xsl:with-param name="header_cols.relcolwidth"  select="$header_cols.relcolwidth"/>-->
+                <xsl:with-param name="max_strings" select="$system_cache__dita:max_strings"/>
+            </xsl:apply-templates>
+        </xsl:variable>
+        <xsl:message>#308 debug @topic.id=<xsl:value-of select="../../../@id"/> ;</xsl:message>
+        <xsl:apply-templates mode="table_cut.local_xref" select="$table_cut">
+            <xsl:with-param name="header_cols" select="xs:integer($header_cols)"/>
+            <xsl:with-param name="topic.id" select="../../../@id"/>
+        </xsl:apply-templates>
+        <!--<xsl:copy-of select="$table_cut"/>-->
+    </xsl:template><xsl:template match="*" mode="preprocess_root.embedded_map.simpletable">
         <xsl:element name="{name()}">
             <xsl:copy-of select="@*"/>
             <xsl:apply-templates mode="preprocess_root.embedded_map.simpletable"/>
         </xsl:element>
     </xsl:template>
     <xsl:template match="@*" mode="preprocess_root.embedded_map.simpletable">
-        <xsl:copy-of select="@*"/>
+        <xsl:copy-of select="."/>
     </xsl:template>
     
     <xsl:template match=" text()" mode="preprocess_root.embedded_map.simpletable">
@@ -277,8 +342,407 @@
     
   
     
-    <xsl:template match="*|text()|comment()" mode="ditamap_root.embedded_map"/>
+    <xsl:template mode="table_cut" match="simpletable">
+        <xsl:param name="width_cols"  select="6"/>
+        <xsl:param name="header_cols" select="1"/>
+        <xsl:param name="start_row"  select="1"/>
+        <xsl:param name="start_col"  select="1"/>
+        <!--<xsl:param name="header_cols.relcolwidth" required="yes"/>-->
+        <xsl:param name="max_strings" required="yes"/>
+        <xsl:variable name="simpletable" select="."/>
+        <xsl:variable name="to" select="ceiling((count(sthead/stentry) - $header_cols ) div ( $width_cols + $header_cols ) )"/>
+        <xsl:variable name="to" >
+            <xsl:choose>
+                <xsl:when test="count(sthead/stentry) mod $width_cols = 1">
+                    <xsl:value-of select="$to"/>
+                </xsl:when>
+                <xsl:when test="count(sthead/stentry) mod $width_cols &gt; 1">
+                    <xsl:value-of select="$to "/> <!-- + 1 -->
+                    <!--<xsl:message>#383 table @id=<xsl:value-of select="@id"/> count(sthead/stentry) mod $width_cols &gt; 1</xsl:message>-->
+                </xsl:when>
+                <xsl:otherwise><xsl:value-of select="$to"/></xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>
+        <xsl:message>#306 strip table @id=<xsl:value-of select="@id"/>; 1 to <xsl:value-of select="$to"/>; (width_cols = <xsl:value-of select="$width_cols"/>) ; count(sthead/stentry)=<xsl:value-of select="count(sthead/stentry)"/>; </xsl:message>
+        
+        <xsl:for-each select="1 to xs:integer($to) ">
+            <xsl:if test="xs:integer($to) &gt; 1">
+                Tabela podzielona - część <xsl:value-of select="position()"/>/<xsl:value-of select="xs:integer($to)"/>.
+            </xsl:if>
+            <xsl:apply-templates mode="table_cut.strow" select="$simpletable">
+                <xsl:with-param name="width_cols"  select="$width_cols"/>
+                <xsl:with-param name="header_cols" select="$header_cols"/>
+                <xsl:with-param name="start_row"  select="$start_row"/>
+                <xsl:with-param name="start_col"  select="current() * $width_cols - $width_cols + 1"/>
+                <!--<xsl:with-param name="header_cols.relcolwidth"  select="$header_cols.relcolwidth"/>-->
+                <xsl:with-param name="position" select="position()"/>
+                <xsl:with-param name="max_strings" select="$max_strings"/>
+            </xsl:apply-templates>
+        </xsl:for-each>
+    </xsl:template>
+    
+    <xsl:template mode="table_cut" match="@id">
+        <xsl:param name="start_col" required="yes"/>
+        <xsl:attribute name="id" select=" concat(.,'_',$start_col)"/>
+    </xsl:template>
+    <xsl:template mode="table_cut" match="@*">
+        <xsl:copy-of select="."/>
+    </xsl:template>
     
+    <xsl:template mode="table_cut" match="@system_cache__dita:width_cols" />
+    <xsl:template mode="table_cut" match="@system_cache__dita:bypass_rows_with_zero" />
+    <xsl:template mode="table_cut" match="@system_cache__dita:bypass_rows_empty" />
+    <xsl:template mode="table_cut.local_xref" match="@system_cache__dita:position"/>
+    <xsl:template mode="table_cut.local_xref" match="@*"><xsl:copy-of select="."/></xsl:template>
+    
+    <xsl:template name="system_cache__dita:header_cols.relcolwidth"  >
+        <xsl:param name="cols_count" required="yes"/>
+        <xsl:param name="header_cols" required="yes"/>
+        <xsl:param name="max_strings" required="yes"/>
+        <xsl:param name="system_cache__dita:header_cols.relcolwidth"/> <!-- to be set from attribute optionaly -->
+        <xsl:message>#372 @id=<xsl:value-of select=".././@id"/> @system_cache__dita:header_cols.relcolwidth run. $cols_count=<xsl:value-of select="$cols_count"/>; $header_cols=<xsl:value-of select="$header_cols"/>;</xsl:message>
+        <xsl:attribute name="relcolwidth">
+            <!--<xsl:value-of select="concat($cols_count,'_',.)"/>-->
+            <xsl:for-each select="1 to $cols_count">
+                <xsl:choose>
+                    <xsl:when test=" current() &lt;= $header_cols and $system_cache__dita:header_cols.relcolwidth">
+                        <xsl:value-of select="$system_cache__dita:header_cols.relcolwidth"/><xsl:text> </xsl:text>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <xsl:value-of select="concat(ceiling($max_strings//stentry[@pos = current()]/@max.string.ph.len.max),'*')"/>
+                        <xsl:choose>
+                            <xsl:when test="current() = $cols_count"></xsl:when>
+                            <xsl:otherwise><xsl:text> </xsl:text></xsl:otherwise>
+                        </xsl:choose>
+                    </xsl:otherwise>
+                </xsl:choose>
+            </xsl:for-each>
+        </xsl:attribute>
+    </xsl:template>
+
+    <xsl:template mode="table_cut" match="@system_cache__dita:header_cols.relcolwidth" >
+        <xsl:param name="cols_count" required="yes"/>
+        <xsl:param name="header_cols" required="yes"/>
+        <xsl:param name="max_strings" required="yes"/>
+        <xsl:call-template name="system_cache__dita:header_cols.relcolwidth">
+            <xsl:with-param name="max_strings" select="$max_strings"/>
+            <xsl:with-param name="header_cols" select="$header_cols"/>
+            <xsl:with-param name="cols_count" select="$cols_count"/>
+            <xsl:with-param name="system_cache__dita:header_cols.relcolwidth" select="@system_cache__dita:header_cols.relcolwidth"/>
+        </xsl:call-template>
+    </xsl:template>
     
     
-</xsl:stylesheet>
+    <xsl:template mode="table_cut.strow" match="simpletable">
+        <xsl:param name="width_cols" required="yes"/>
+        <xsl:param name="header_cols" required="yes"/>
+        <xsl:param name="start_row"   required="yes"/>
+        <xsl:param name="start_col"   required="yes"/>
+        <!--<xsl:param name="header_cols.relcolwidth"  required="yes"/>-->
+        <xsl:param name="position"  required="yes"/>
+        <xsl:param name="max_strings" required="yes"/>
+        <xsl:variable name="simpletable" select="."/>
+        <xsl:variable name="simpletable.id" select="concat($uuid,'_',@id,'_',$start_col)"/>
+        <xsl:message>#325 starting $start_col=<xsl:value-of select="$start_col"/>;</xsl:message>
+        <xsl:variable name="add_to_once" select="$position">
+            <!--<xsl:choose>
+                <xsl:when test="$start_col = 1"><xsl:value-of select="xs:integer(0)"/></xsl:when>
+                <xsl:otherwise><xsl:value-of select="xs:integer(1)"/></xsl:otherwise>
+            </xsl:choose>-->
+        </xsl:variable>
+        
+        <xsl:variable name="cols_count" > <!--  select="$header_cols - 1 + $start_col + $header_cols  - $start_col + $header_cols + $width_cols" -->
+            <!--<xsl:choose>
+                        <xsl:when test="count(sthead/stentry) &lt;= $width_cols"><xsl:value-of select="count(sthead/stentry)"/></xsl:when>
+                        <xsl:when test="count(sthead/stentry) &lt;= $width_cols"><xsl:value-of select="count(sthead/stentry)"/></xsl:when>
+                    </xsl:choose>-->
+            <xsl:choose>
+                <xsl:when test="count(sthead/stentry) &lt;= $width_cols"><!--  mniejsza tabela niz width -->
+                    <xsl:message>#386a mniejsza tabela niz width - set <xsl:value-of select="count(sthead/stentry)"/></xsl:message>
+                    <xsl:value-of select="count(sthead/stentry)"/>
+                </xsl:when>
+                <xsl:when test="$start_col = 1 and count(sthead/stentry) &gt;= $width_cols  "> <!--  poczatek duzej tabeli -->
+                    <xsl:message>#386d $width_cols=<xsl:value-of select="$width_cols"/>;  $start_col=<xsl:value-of select="$start_col"/>; cnt<xsl:value-of select="count(sthead/stentry)"/>; poczatek duzej tabeli - set <xsl:value-of select="$header_cols + $width_cols + 1"/></xsl:message>
+                    <xsl:value-of select="$header_cols + $width_cols + 1"/>
+                </xsl:when>
+                <xsl:when test="count(sthead/stentry) - $start_col + $position &lt;= $width_cols + $position "> <!--  koncowka duzej tabeli -->
+                    <xsl:message>#386c $width_cols=<xsl:value-of select="$width_cols"/>;  $start_col=<xsl:value-of select="$start_col"/>; cnt<xsl:value-of select="count(sthead/stentry)"/>; koncowka duzej tabeli - set <xsl:value-of select="count(sthead/stentry) - $start_col - $position + $header_cols "/></xsl:message>
+                    <xsl:value-of select="count(sthead/stentry) - $start_col - $position + $header_cols "/>
+                </xsl:when>
+                <xsl:when test="count(sthead/stentry) - $start_col &gt; $width_cols "> <!--  srodek duzej tabeli -->
+                    <xsl:message>#386b $width_cols=<xsl:value-of select="$width_cols"/>; $start_col=<xsl:value-of select="$start_col"/>; cnt<xsl:value-of select="count(sthead/stentry)"/>; srodek duzej tabeli - set <xsl:value-of select="$width_cols + $header_cols "/></xsl:message>
+                    <xsl:value-of select="$width_cols + $header_cols + 1"/>
+                </xsl:when>
+                <xsl:otherwise>
+                    <xsl:message terminate="yes">#386c $width_cols=<xsl:value-of select="$width_cols"/>; $start_col=<xsl:value-of select="$start_col"/>; cnt<xsl:value-of select="count(sthead/stentry)"/>; blad warunku tabeli </xsl:message>
+                </xsl:otherwise>
+            </xsl:choose>
+        </xsl:variable>
+        
+        <xsl:element name="{name()}">
+            <xsl:attribute name="system_cache__dita:position" select="$position"/>
+            <xsl:apply-templates mode="table_cut" select="@*">
+                <xsl:with-param name="header_cols" select="$header_cols"/>
+                <xsl:with-param name="start_col" select="$start_col"/>
+                <!--<xsl:with-param name="header_cols.relcolwidth"  select="$header_cols.relcolwidth"/>-->
+                <xsl:with-param name="max_strings" select="$max_strings"/>
+                <xsl:with-param name="cols_count" select="$cols_count" /> 
+            </xsl:apply-templates>
+            <xsl:if test="not(@system_cache__dita:header_cols.relcolwidth)"><!-- force to use auto relcolwidth -->
+                    <xsl:call-template name="system_cache__dita:header_cols.relcolwidth">
+                        <xsl:with-param name="max_strings" select="$max_strings"/>
+                        <xsl:with-param name="cols_count" select="$cols_count" />
+                        <xsl:with-param name="header_cols" select="$header_cols"/>
+                    </xsl:call-template>
+                </xsl:if>
+                <xsl:if test="$start_row = 1">
+                    <sthead>
+                        <xsl:for-each select="1 to $header_cols"><!-- naglowki -->
+                            <stentry><xsl:value-of select="$simpletable/sthead/stentry[ position() = current()]"/></stentry>
+                        </xsl:for-each>
+                        <xsl:for-each select="$start_col + $header_cols + xs:integer($add_to_once) to $start_col + $header_cols + $width_cols + xs:integer($add_to_once)">
+                            <xsl:if test="$simpletable/sthead/stentry[ position() = current()]">
+                                <stentry><xsl:value-of select="$simpletable/sthead/stentry[ position() = current()]"/></stentry>
+                            </xsl:if>
+                        </xsl:for-each>
+                    </sthead>
+                </xsl:if>
+                <xsl:variable name="strow_test.root">
+                    <xsl:for-each select="strow">
+                        <xsl:variable name="strow" select="."/> 
+                        <xsl:variable name="simpletable.id" select="concat($simpletable.id,'_h_',position())"/>
+                        
+                        <xsl:variable name="strow_test">
+                            <strow>
+                                <xsl:attribute name="id" select="$simpletable.id"/>
+                            <!--<xsl:for-each select="1 to $header_rows"><!-\- wart -\->
+                                <stentry><xsl:value-of select="$strow/strow[ position() = current()]"/></stentry>
+                            </xsl:for-each>-->
+                                <xsl:for-each select="1 to $header_cols">
+                                     <xsl:if test="$strow/stentry[ position() = current()]">
+                                         <stentry id="{$simpletable.id}_h{position()}"><xsl:value-of select="$strow/stentry[ position() = current()]/text()"/></stentry>
+                                     </xsl:if>
+                                 </xsl:for-each>
+                                <xsl:for-each select="$start_col + $header_cols + xs:integer($add_to_once) to  $start_col + $header_cols + $width_cols  + xs:integer($add_to_once)">
+                                    <xsl:if test="$simpletable/sthead/stentry[ position() = current()]">
+                                        <stentry id="{$simpletable.id}_e{position()}"><xsl:value-of select="$strow/stentry[ position() = current()]/text()"/>
+                                            <xsl:copy-of select="$strow/stentry[ position() = current()]/Benford:table_analys_exceed"/>
+                                            <xsl:copy-of select="$strow/stentry[ position() = current()]/Benford:table"/>
+                                            <xsl:copy-of select="$strow/stentry[ position() = current()]/topic"/>
+                                        </stentry>
+                                    </xsl:if>
+                                </xsl:for-each>
+                            </strow>
+                        </xsl:variable>
+                        <!-- handle system_cache__dita:bypass_rows_with_zero="true" system_cache__dita:bypass_rows_empty="true" -->
+                        
+                        <!--<xsl:message>#547 $simpletable/@system_cache__dita:bypass_rows_with_zero  - <xsl:value-of select="$simpletable/@system_cache__dita:bypass_rows_with_zero"/> ; <xsl:value-of select="$strow_test/stentry[ position() &gt; $header_cols and not( text()='0')]"/></xsl:message>-->
+                        
+                        <xsl:choose>
+                            <xsl:when test="$simpletable/@system_cache__dita:bypass_rows_empty and $simpletable/@system_cache__dita:bypass_rows_with_zero and $strow_test//stentry[ position() &gt; $header_cols and ( text() and not( text()='0')  )]">
+                                <xsl:comment>#549c not ignored @system_cache__dita:bypass_rows_empty and @system_cache__dita:bypass_rows_with_zero </xsl:comment>
+                                <xsl:message>#549c not ignored @system_cache__dita:bypass_rows_empty and @system_cache__dita:bypass_rows_with_zero </xsl:message>
+                                <xsl:copy-of select="$strow_test"/>
+                            </xsl:when>
+                            <xsl:when test="$simpletable/@system_cache__dita:bypass_rows_with_zero and not($simpletable/@system_cache__dita:bypass_rows_empty) and $strow_test//stentry[ position() &gt; $header_cols and  not( text()='0' )  ]">
+                                <xsl:comment>#549a not ignored @system_cache__dita:bypass_rows_with_zero  </xsl:comment>
+                                <xsl:message>#549a not ignored @system_cache__dita:bypass_rows_with_zero <xsl:value-of select="$strow_test//stentry[ position() &gt; $header_cols and not( text()='0')]"/> </xsl:message>
+                                <xsl:copy-of select="$strow_test"/>
+                            </xsl:when>
+                            <xsl:when test="$simpletable/@system_cache__dita:bypass_rows_empty and not($simpletable/@system_cache__dita:bypass_rows_with_zero ) and $strow_test//stentry[ position() &gt; $header_cols and  text() ]">
+                                <xsl:comment>#549b not ignored @system_cache__dita:bypass_rows_empty  </xsl:comment>
+                                <xsl:message>#549b not ignored @system_cache__dita:bypass_rows_empty <xsl:value-of select="$strow_test//stentry[ position() &gt; $header_cols and text() ]"/> </xsl:message>
+                                <xsl:copy-of select="$strow_test"/>
+                            </xsl:when>
+                            <xsl:when test="$simpletable/@system_cache__dita:bypass_rows_with_zero or $simpletable/@system_cache__dita:bypass_rows_empty"> <!-- or $simpletable/@system_cache__dita:bypass_rows_with_zero  -->
+                                <xsl:comment>#549d ignored @system_cache__dita:bypass_rows_empty  </xsl:comment>
+                                <xsl:message>#549d ignored @system_cache__dita:bypass_rows_empty  </xsl:message>
+                            </xsl:when>
+                            <xsl:otherwise><xsl:copy-of select="$strow_test"/></xsl:otherwise>
+                        </xsl:choose>
+                    </xsl:for-each>
+                </xsl:variable>
+                <xsl:choose>
+                    <xsl:when test="$strow_test.root//strow">
+                        <xsl:copy-of select="$strow_test.root"/>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <strow>
+                            <xsl:for-each select="strow[1]">
+                                <xsl:variable name="strow" select="."/> 
+                                <xsl:variable name="simpletable.id" select="concat($simpletable.id,'_h_',position())"/>
+                                <xsl:for-each select="1 to $header_cols">
+                                     <xsl:if test="$strow/stentry[ position() = current()]">
+                                         <stentry id="{$simpletable.id}_h{position()}">(pominięto)</stentry>
+                                     </xsl:if>
+                                 </xsl:for-each>
+                                 <xsl:for-each select="$start_col + $header_cols + xs:integer($add_to_once) to  $start_col + $header_cols + $width_cols  + xs:integer($add_to_once)">
+                                     <xsl:if test="$simpletable/sthead/stentry[ position() = current()]">
+                                         <stentry id="{$simpletable.id}_e{position()}">0</stentry>
+                                     </xsl:if>
+                                 </xsl:for-each>
+                             </xsl:for-each>
+                        </strow>
+                    </xsl:otherwise>
+                </xsl:choose>
+        </xsl:element>
+    </xsl:template>
+  
+    <xsl:template name="system_cache__dita:max_strings">
+        <xsl:param name="simpletable" required="yes"/>
+        <xsl:variable name="max_strings">
+            <max_strings>
+                <xsl:for-each select="$simpletable/sthead/stentry">
+                    <stentry>
+                        <xsl:attribute name="pos" select="position()"/>
+                        <xsl:attribute name="len" select="string-length( text())"/>
+                        <xsl:attribute name="string.ph.len.max" select="system_cache__dita:string.ph.len.max( text())"/>
+                    </stentry>
+                    <xsl:variable name="pos" select="position()"/>
+                    <xsl:for-each select="$simpletable/strow">
+                        <xsl:for-each select="stentry[ position() = $pos]">
+                            <stentry>
+                                <xsl:attribute name="pos" select="$pos"/>
+                                <xsl:attribute name="stentry" select="'tak'"/>
+                                <xsl:attribute name="len" select="string-length( text())"/>
+                                <xsl:attribute name="string.ph.len.max" select="system_cache__dita:string.ph.len.max( text())"/>
+                            </stentry>
+                        </xsl:for-each>
+                    </xsl:for-each>
+                </xsl:for-each>
+            </max_strings>
+        </xsl:variable>
+        
+        <xsl:variable name="max_strings">
+            <max_strings><!--<xsl:comment><xsl:copy-of select="$max_strings"/></xsl:comment>-->
+                <xsl:for-each-group select="$max_strings//stentry" group-by="@pos">
+                    <stentry>
+                        <xsl:attribute name="pos" select="@pos"/>
+                        <xsl:attribute name="max.len" select="max( current-group()/@len )"/>
+                        <xsl:attribute name="max.string.ph.len.max" select="max( current-group()/@string.ph.len.max )"/>
+                    </stentry>
+                </xsl:for-each-group>
+            </max_strings>
+        </xsl:variable>
+        <xsl:copy-of select="$max_strings"/>
+    </xsl:template>
+  
+  
+    <xsl:template name="system_cache__dita:width_cols.auto">
+        <xsl:param name="simpletable" required="yes"/><!-- detect optimal table width_cols -->
+        <xsl:param name="max_strings" required="yes"/>
+        <xsl:variable name="sum_width" select="sum($max_strings//@max.string.ph.len.max) + $system_cache__dita:simpletable.col.size * count($max_strings//stentry) "/>
+        <xsl:variable name="screens_div_sum" select="$system_cache__dita:pdf_a4_string_width div $sum_width"/>
+        <xsl:variable name="system_cache__dita:width_cols.auto.cols" select="count($simpletable/sthead/stentry) * $screens_div_sum"/>     
+        <xsl:variable name="system_cache__dita:width_cols.auto.div" select=" ceiling(count($simpletable/sthead/stentry) div $system_cache__dita:width_cols.auto.cols)"/>
+        <xsl:variable name="system_cache__dita:width_cols.auto" select="round(count($simpletable/sthead/stentry) div $system_cache__dita:width_cols.auto.div )"/>
+        <xsl:message>#506 system_cache__dita:width_cols.auto $sum_width=<xsl:value-of select="$sum_width"/> $screens_div_sum = <xsl:value-of select="$screens_div_sum"/> ; $system_cache__dita:width_cols.auto.cols=<xsl:value-of select="$system_cache__dita:width_cols.auto.cols"/>; $system_cache__dita:width_cols.auto.div=<xsl:value-of select="$system_cache__dita:width_cols.auto.div"/>; <xsl:value-of select="$system_cache__dita:width_cols.auto"/> </xsl:message>
+        <xsl:value-of select="$system_cache__dita:width_cols.auto"/>
+    </xsl:template><xsl:template match="*|text()|comment()" mode="ditamap_root.embedded_map"/>
+    
+    
+    
+<xsl:template mode="system_cache__dita:xref.topic.result-document" match="@*"><xsl:copy-of select="."/></xsl:template>
+    
+    <xsl:template match="*" mode="system_cache__dita:xref.topic.result-document">
+        <topicref href="{@id}.dita">
+            <xsl:result-document href="{system_cache__dita:xref_result-document(@id)}">
+                <xsl:element name="{name()}">
+                    <xsl:apply-templates select="@*" mode="system_cache__dita:xref.topic.result-document"/>
+                    <!--<xsl:copy-of select="@*"/>-->
+                    <xsl:copy-of select="*"/>
+                </xsl:element>
+            </xsl:result-document>
+        </topicref>
+    </xsl:template>
+    
+    
+    <xsl:template match="simpletable"  mode="table_cut.local_xref">
+        <xsl:param name="header_cols" required="yes"/>
+        <xsl:param name="topic.id" required="yes"/>
+        <xsl:element name="{name()}">
+            <xsl:apply-templates mode="table_cut.local_xref" select="@*"/>
+            <xsl:apply-templates mode="table_cut.local_xref">
+                <xsl:with-param name="header_cols" select="$header_cols"/>
+                <xsl:with-param name="topic.id" select="$topic.id"/>
+            </xsl:apply-templates>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:template match="sthead"  mode="table_cut.local_xref">
+        <xsl:copy-of select="."/>
+    </xsl:template>
+    
+    <xsl:template match="strow"  mode="table_cut.local_xref">
+        <xsl:param name="header_cols" required="yes"/>
+        <xsl:param name="topic.id" required="yes"/>
+        <xsl:element name="{name()}">
+            <xsl:copy-of select="@*"/>
+            <xsl:for-each select="stentry [ position() = 1 ]">
+                <xsl:element name="{name()}">
+                    <xsl:copy-of select="@*"/>
+                    <xsl:variable name="position" select="../../@system_cache__dita:position"/>
+                    <!--Pos simpletable="<xsl:value-of select="$position"/>"
+                    next="<xsl:value-of select="../../../simpletable[@system_cache__dita:position &gt; $position]/@system_cache__dita:position"/>"-->
+                    <xsl:variable name="next_id" select="../../../simpletable[ @system_cache__dita:position &gt; $position ][1]/strow/stentry[ position() = 1 and text()= current()]/@id"/>
+                    <xsl:variable name="prev_id" select="../../../simpletable[ @system_cache__dita:position &lt; $position and max(@system_cache__dita:position) ][1]/strow/stentry[ position() = 1 and text()= current()]/@id"/>
+                    
+                    <xsl:if test="$next_id">
+                        <xref href="#{$topic.id}/{$next_id}" format="dita">v</xref>
+                    </xsl:if>
+                    <xsl:if test="$prev_id">
+                        <xref href="#{$topic.id}/{$prev_id}" format="dita">^</xref>
+                    </xsl:if>
+                    <!--<xref href="#{$topic_id}/{$prev_id}" format="dita">^</xref>-->
+                    <xsl:value-of select="text()"/>
+                </xsl:element>
+            </xsl:for-each>
+            <xsl:for-each select="stentry [ position() &gt; 1 ]">
+                <xsl:copy-of select="."/>
+            </xsl:for-each>
+        </xsl:element>
+    </xsl:template>
+    
+    <xsl:function name="system_cache__dita:string.ph.len.max">
+        <xsl:param name="string"/>
+        <xsl:variable name="max_det">
+            <max_det>
+                <xsl:choose>
+                    <xsl:when test="contains($string,' ')">
+                        <xsl:for-each select="tokenize($string,' ')">
+                            <max><xsl:value-of select="string-length(.)"/></max>
+                        </xsl:for-each>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <max><xsl:value-of select="string-length($string)"/></max>
+                    </xsl:otherwise>
+                </xsl:choose>
+            </max_det>
+        </xsl:variable>
+        <xsl:value-of select="max($max_det//max)"/>
+    </xsl:function>
+    
+    <xsl:function name="system_cache__dita:xref_2_topc">
+        <xsl:param name="topic.id"/>
+        <!--<xref href="#topic_ghxf_rum_os_d1e1/simpgletablesss_inaaz_fwf_d1e1_1" format="dita">asd</xref>-->
+        <xref href="{$topic.id}.dita"/>
+    </xsl:function>
+    
+    <xsl:function name="system_cache__dita:xref_2_topc">
+        <xsl:param name="topic.id"/>
+        <xsl:param name="desc"/>
+        <!--<xref href="#topic_ghxf_rum_os_d1e1/simpgletablesss_inaaz_fwf_d1e1_1" format="dita">asd</xref>-->
+        <xref href="{$topic.id}.dita"><xsl:value-of select="$desc"/></xref>
+    </xsl:function>
+    
+    <xsl:function name="system_cache__dita:xref_result-document">
+        <xsl:param name="id"/>
+        <xsl:value-of select="concat($temp,'/',$uuid,'/',$id,'.dita')"/>
+    </xsl:function>
+    
+    <xsl:function name="system_cache__dita:Benford.simpletable.strow.id">
+        <xsl:param name="Benford:year"/>
+        <xsl:param name="Benford:subject"/>
+        <!--<xref href="#topic_ghxf_rum_os_d1e1/simpgletablesss_inaaz_fwf_d1e1_1" format="dita">asd</xref>-->
+        <xsl:value-of select="concat($Benford:subject,'_',$Benford:year)"/>
+    </xsl:function></xsl:stylesheet>

+ 22 - 0
SE/schema/default_db_xml_cache.public/get_all_xsd.xsl

@@ -475,6 +475,25 @@
     <!-- EOF external schema templates -->
     
     
+    <xsl:template name="system_cache__appinfo:get_all_xsd.verify_unique_id">
+        <system_cache__appinfo:get_all_xsd.verify_unique_id>
+            <xsl:variable name="system_cache__appinfo:get_all_xsd" select="doc($procesy5_system_schema)"/>
+            
+        
+        
+            <xsl:for-each select="$system_cache__appinfo:get_all_xsd//schema[ not(@targetNamespace='http://www.w3.org/2001/XMLSchema') and not(@targetNamespace='http://biuro.biall-net.pl/p5/schema/types')]//*[@id and position() &lt; 100] " xpath-default-namespace="http://www.w3.org/2001/XMLSchema">
+                <xsl:message>#486 testing <xsl:value-of select="name()"/> and @id=<xsl:value-of select="@id"/></xsl:message>
+                <xsl:choose>
+                    <xsl:when test="count($system_cache__appinfo:get_all_xsd//*[@id = current()/@id]) &gt; 1">
+                        <xsl:message terminate="yes">#489 error duplicate @id for <xsl:value-of select="@id"/> - element <xsl:value-of select="name()"/>/<xsl:value-of select="@name"/>
+                        
+                        </xsl:message>
+                    </xsl:when>
+                </xsl:choose>
+            </xsl:for-each>
+        </system_cache__appinfo:get_all_xsd.verify_unique_id>
+    </xsl:template>
+    
     <xsl:template name="system_cache__appinfo:get_all_xsd">
         <xsl:param name="path2collection" select="$procesy5_system_schema_collection_dir"/> 
         <xsl:param name="get_system_schemas"/>
@@ -494,6 +513,9 @@
                     <xsl:for-each select="$docs">
                         <xsl:message> get_all_xsd przetwarzam plik <xsl:value-of select="document-uri(/)"/></xsl:message>
                         <xsl:choose>
+                            <xsl:when test="contains(document-uri(/),'/ant-object/')">
+                                <xsl:message>#519 ignored /ant-object for <xsl:value-of select="document-uri(/)"/>"/> ;</xsl:message>
+                            </xsl:when>
                             <xsl:when test=" contains(document-uri(/), concat($external_schema,'/'))">
                                 <xsl:comment>#145 Ignored /public_html/external_schema <xsl:value-of select="document-uri(/)"/></xsl:comment>
                                 <system_cache__appinfo:get_all_xsd_external_schema>

+ 19 - 4
SE/schema/default_db_xml_cache.public/main_build_recurse_ant.dita_with_id.xsl

@@ -171,7 +171,9 @@
         <xsl:variable name="build_complexType" select="doc(concat($build_complexType_dir,'/',$prefixed_object_info/system_cache__appinfo:prefixed_object_info/@prefix,'/',$prefixed_object_info/system_cache__appinfo:prefixed_object_info/@element,'.xml'))"/>
         <xsl:variable name="detect_resource_type" select=" system_cache__resources_tree_generate_xsl_required_occurs_raport:detect_resource_type_from_cache(@system_cache__appinfo:ref)"/>
         <xsl:comment>#138 from <xsl:value-of select="@system_cache__appinfo:ref"/>; I get prefixed_object_info/@element <xsl:value-of select="$prefixed_object_info/system_cache__appinfo:prefixed_object_info/@element"/>; </xsl:comment>
-        <xsl:element name="RelatedFeature">
+        <xsl:choose>
+            <xsl:when test="@flat_relation_cache_xpath and @flat_relation_cache_name">
+                <xsl:element name="RelatedFeature">
             <xsl:attribute name="xml_id" select="generate-id()"/>
                  <!-- tymczasowe wymuszenie relacji do obiektu glownego na podstawie $detect_resource_type -->
                  <!-- <xsl:attribute name="typeName" select="p5_tr_map:force_local_typeName(@system_cache__appinfo:ref)"/>-->
@@ -221,7 +223,12 @@
                     </xsl:apply-templates>
                 </xsl:element>
         </xsl:element>
-    </xsl:template>
+        </xsl:when>
+            <xsl:otherwise>
+                <xsl:message>#228 @flat_relation_cache_xpath and @flat_relation_cache_name not set for @id<xsl:value-of select="@id"/></xsl:message>
+                <xsl:comment>#228 @flat_relation_cache_xpath and @flat_relation_cache_name not set for @id<xsl:value-of select="@id"/></xsl:comment>
+            </xsl:otherwise>
+        </xsl:choose></xsl:template>
     
     <xsl:template match="p5_tr_map:go_recurse_from_root_by_build_element_477[@system_cache__appinfo:loop_name]">
         <!--<xsl:param name="build_complexType" required="yes"/>-->
@@ -235,7 +242,9 @@
         <!--<xsl:variable name="build_complexType" select="doc(concat($build_complexType_dir,'/element-',system_cache__appinfo:escape_object_prefix_to_string(@system_cache__appinfo:ref),'.xml'))"/>--><!-- tutaj na podstawie tego powinnismy zbudowac odpowiedni filtr lub olac? o to zadba kolejne wyzwolenie rekursywne-->
         <xsl:variable name="detect_resource_type" select=" system_cache__resources_tree_generate_xsl_required_occurs_raport:detect_resource_type_from_cache(@system_cache__appinfo:ref)"/> 
         <xsl:comment>#190 from <xsl:value-of select="@system_cache__appinfo:ref"/>; I get prefixed_object_info/@element <xsl:value-of select="$prefixed_object_info/system_cache__appinfo:prefixed_object_info/@element"/>; </xsl:comment>
-        <xsl:element name="RelatedFeatureLoop">
+        <xsl:choose>
+            <xsl:when test="@flat_relation_cache_xpath and @flat_relation_cache_name">
+                <xsl:element name="RelatedFeatureLoop">
             <xsl:attribute name="xml_id" select="generate-id()"/>
             <!-- tymczasowe wymuszenie relacji do obiektu glownego na podstawie $detect_resource_type -->
             <!--<xsl:attribute name="typeName" select="p5_tr_map:force_local_typeName(@system_cache__appinfo:ref)"/>-->
@@ -276,7 +285,13 @@
                 <!--<xsl:apply-templates/>-->
             </xsl:element>
         </xsl:element>
-    </xsl:template>
+    </xsl:when>
+            <xsl:otherwise>
+                <xsl:message>#293 @flat_relation_cache_xpath and @flat_relation_cache_name not set for @id<xsl:value-of select="@id"/></xsl:message>
+                <xsl:comment>#293 @flat_relation_cache_xpath and @flat_relation_cache_name not set for @id<xsl:value-of select="@id"/></xsl:comment>
+            </xsl:otherwise>
+        </xsl:choose>
+        </xsl:template>
     
     <xsl:template mode="p5_tr_map:go_recurse_from_root_by_build_element_477_backref" match="*">
         <!-- podmieniamy na relacje od drugiej strony-->

+ 10 - 2
SE/schema/default_db_xml_cache.public/system_cache__appinfo/external_schema_targetNamespace.xsl

@@ -11,6 +11,8 @@
     <xsl:strip-space elements="*"/>
     
     
+    <xsl:param name="default_db_targetNamespace_detect_string" select="'default_db/table/'"/>
+    
     <xsl:function name="system_cache__appinfo:object_install_se_ant_object.detect_external_targetNamespace">
         <xsl:param name="system_cache__appinfo:document-uri"/><!-- system_cache__appinfo:document-uri="external_schema/ksiegi_wieczyste/zsin_1013.xsd" -->
         <xsl:value-of select="replace($system_cache__appinfo:document-uri,'(/|:)','__')"/>
@@ -51,8 +53,14 @@
     
     <xsl:function name="system_cache__appinfo:object_install_se_ant_object.create_targetNamespace_final">
         <xsl:param name="targetNamespace"/> <!-- for use in schema -->
-        <xsl:value-of select="concat($targetNamespace,'.xsd')"/>
-    </xsl:function>
+        <xsl:choose>
+            <xsl:when test="contains($targetNamespace,$default_db_targetNamespace_detect_string)">
+                <xsl:message>#56 TO MOVE TO CONFIG not adding .xsd because of default</xsl:message>
+                <xsl:value-of select="$targetNamespace"/>
+            </xsl:when>
+            <xsl:otherwise><xsl:value-of select="concat($targetNamespace,'.xsd')"/>
+    </xsl:otherwise>
+        </xsl:choose></xsl:function>
     
     <xsl:function name="system_cache__appinfo:object_install_se_ant_object.save_to_ant-object-path">
         <xsl:param name="system_cache__appinfo:document-uri-orig"/> <!-- for use in schema -->

+ 66 - 3
SE/se-lib/AntAclBase.php

@@ -105,15 +105,78 @@ class AntAclBase extends Core_AclBase {
 	}
 	public function getRealFieldListByIdZasob() {
 		$cols = array();
-		$fakeZasobId = 1000000; // TODO: RMME
 		foreach ($this->getFields() as $field) {
-			$idZasobField = ($field['idZasob']) ? $field['idZasob'] : $fakeZasobId++; // TODO: RMME
 			if (!$field['isActive']) continue;
 			if (!$field['idZasob']) continue;
-			$cols[$idZasobField] = $field['fieldNamespace'];
+			$cols[ $field['idZasob'] ] = $field['fieldNamespace'];
 		}
 		return $cols;
 	}
+	public function getRealFieldList() {
+		$pkField = $this->getPrimaryKeyField();
+		$cols = array_merge([ $pkField ], array_filter($this->getLocalFieldList(), function ($fieldName) use ($pkField) {
+			if ($pkField === $fieldName) return false;
+			return true;
+		}));
+		return $cols;
+	}
+	public function getHistItems($id, $params = array()) {
+		DBG::log($params, 'array', "getHistItems({$id}, \$params)");
+		$sqlPkField = $this->getSqlPrimaryKeyField();
+		$ret = array();
+		$sql_tbl = $this->getRootTableName() . "_HIST";
+		$sql_cols = array_map(function ($fieldName) {
+			return "t.`{$fieldName}`";
+		}, $this->getRealFieldList());
+		$sql_cols = implode(", ", $sql_cols);
+		$sql_where = "t.`ID_USERS2`='{$id}'";
+
+		$idHist = V::get('ID', 0, $params, 'int');
+		if ($idHist > 0) {
+			$sql_where .= "\n and t.`ID`='{$idHist}'";
+		}
+		$paramNotEmptyFlds = V::get('notEmptyFlds', '', $params);
+		if (!empty($paramNotEmptyFlds) && is_array($paramNotEmptyFlds)) {
+			$sqlWhereOr = array();
+			foreach ($paramNotEmptyFlds as $fldName) {
+				if (array_key_exists($fldName, $this->_cols)) {
+					$sqlWhereOr[] = "t.`{$fldName}`!='N/S;'";
+				}
+			}
+			if (!empty($sqlWhereOr)) $sql_where .= "\n and (" . implode(" or ", $sqlWhereOr) . ")";
+		}
+
+		$histRows = DB::getPDO()->fetchAllByKey("
+			select {$sql_cols}
+			from {$sql_tbl} as t
+			where {$sql_where}
+			order by ID DESC
+		", 'ID');
+		return array_map(function ($row) {
+			$r = (object)$row;
+			$r->_author = $r->A_RECORD_UPDATE_AUTHOR;
+			$r->_created = $r->A_RECORD_UPDATE_DATE;
+
+			if (!$r->_author || $r->_author == 'N/S;') {
+				$r->_author = $r->A_RECORD_CREATE_AUTHOR;
+			}
+			if (!$r->_created || $r->_created == 'N/S;') {
+				$r->_created = $r->A_RECORD_CREATE_DATE;
+			}
+			return $r;
+		}, $histRows);
+	}
+	public function getFieldIdByName($fieldName) {
+		if (!$fieldName) return null;
+		$idZasob = null;
+		foreach ($this->getFields() as $field) {
+			if ($fieldName === $field['name']) {
+				if ($field['idZasob']) $idZasob = $field['idZasob'];
+			}
+		}
+		return $idZasob;
+	}
+
 	public function getFieldType($fieldName) { return null; }
 	//   try {
 	//     throw new Exception("TODO: AntAclBase::getFieldType({$fieldName})");

+ 186 - 180
SE/se-lib/TableAjax.php

@@ -406,23 +406,23 @@ class TableAjax extends ViewAjax {
 		UI::showMessagesForTable($this->_tbl);
 		UI::endContainer();
 		$namespace = $acl->getNamespace();
-		?>
-		<div class="AjaxTableCont">
-			<ul class="breadcrumb">
-				<?php
-				echo UI::h('li', [], [
+		echo UI::h('div', [ 'class' => "AjaxTableCont" ], [
+			UI::h('ul', [ 'class' => "breadcrumb" ], [
+				UI::h('li', [], [
 					UI::h('a', [ 'href' => "#", 'onclick' => "return tableAjaxBackToTable();" ], $this->getLabelHtml() ),
-				]);
-				if ($hasPermCreate) {
-					echo UI::h('li', [], [
+				]),
+
+				($hasPermCreate)
+				?	UI::h('li', [], [
 						UI::h('a', [ 'title' => "Dodaj nowy rekord", 'class' => "", 'href' => "#CREATE" ], [
 							UI::h('span', [ 'class' => "glyphicon glyphicon-plus" ]),
 							" Dodaj nowy rekord",
 						]),
-					]);
-				}
-				if ($this->showProcesInitFiltr) {
-					echo UI::h('div', [ 'class' => "btn-group pull-right" ], [
+					])
+				:	'',
+
+				($this->showProcesInitFiltr)
+				?	UI::h('div', [ 'class' => "btn-group pull-right" ], [
 						UI::h('a', [ 'class' => "btn btn-xs btn-info dropdown-toggle",
 							'data-toggle' => "dropdown",
 							'href' => "#",
@@ -434,10 +434,11 @@ class TableAjax extends ViewAjax {
 								UI::h('a', [ 'href' => "#", 'onclick' => "return false;" ], " loading ... "),
 							]),
 						]),
-					]);
-				}
-				if ($this->showTableTools) {
-					echo UI::h('div', [ 'class' => "btn-group pull-right" ], [
+					])
+				:	'',
+
+				($this->showTableTools)
+				?	UI::h('div', [ 'class' => "btn-group pull-right" ], [
 						UI::h('a', [ 'class' => "btn btn-xs btn-default dropdown-toggle",
 							'style' => "margin-right:16px",
 							'data-toggle' => "dropdown",
@@ -450,55 +451,56 @@ class TableAjax extends ViewAjax {
 								UI::h('a', [ 'href' => "#", 'onclick' => "return false;" ], " loading ... "),
 							]),
 						]),
-					]);
-				}
-				?>
-				<?php if ($this->_tbl == 'IN7_MK_BAZA_DYSTRYBUCJI') : ?>
-					<a class="pull-right" style="padding:0 20px 0 0;" href="<?= "index.php?MENU_INIT=TREEJS&ZASOB_ID={$this->_zasobID}"; ?>"><i class="glyphicon glyphicon-eye-open"></i> Drzewo</a>
-				<?php elseif ($this->allowTreeView()) : ?>
-					<a class="pull-right" style="padding:0 20px 0 0;" href="<?= "index.php?MENU_INIT=VIEWTREE_AJAX&ZASOB_ID={$this->_zasobID}"; ?>"><i class="glyphicon glyphicon-eye-open"></i> Drzewo</a>
-				<?php endif; ?>
-				<?php if ($this->_tbl == 'WMS_MAP_GEOREFERENCES') : ?>
-					<a class="pull-right" style="padding:0 20px 0 0;" href="<?= "index.php?_route=GeoreferencesManager"; ?>"><i class="glyphicon glyphicon glyphicon-wrench"></i> Zarządzaj punktami</a>
-				<?php endif; ?>
-			</ul>
-			<?php
-				if ($this->_backRefFilter) {
-					echo UI::h('div', [ 'class' => "container" ], [
-						UI::h('div', [ 'class' => "alert alert-info" ], [
-							"Rekordy powiązane z rekordem {$this->_backRefFilter['primaryKey']} z ",
-							UI::h('a', [
-								'href' => "index.php?_route=ViewTableAjax&namespace={$this->_backRefFilter['namespace']}",
-							], $this->_backRefFilter['namespace']),
-							" - ",
-							UI::h('a', [
-								'href' => $this->rootUrl,
-								'style' => "color:red",
-							], "usuń filtr"),
-						]),
-					]);
-				}
-			?>
-			<?php
-				if ($this->_childRefFilter) {
-					echo UI::h('div', [ 'class' => "container" ], [
-						UI::h('div', [ 'class' => "alert alert-info" ], [
-							"Rekordy powiązane z rekordem {$this->_childRefFilter['primaryKey']} z ",
-							UI::h('a', [
-								'href' => "index.php?_route=ViewTableAjax&namespace={$this->_childRefFilter['namespace']}",
-							], $this->_childRefFilter['namespace']),
-							" - ",
-							UI::h('a', [
-								'href' => $this->rootUrl,
-								'style' => "color:red",
-							], "usuń filtr"),
-						]),
-					]);
-				}
-			?>
-			<div id="<?= $this->_htmlID; ?>"></div>
-		</div>
-		<?php
+					])
+				:	'',
+
+				($this->_tbl == 'IN7_MK_BAZA_DYSTRYBUCJI')
+				?	UI::h('a', [ 'class' => "pull-right", 'style' => "padding:0 20px 0 0", 'href' => "index.php?MENU_INIT=TREEJS&ZASOB_ID={$this->_zasobID}" ], "<i class=\"glyphicon glyphicon-eye-open\"></i> Drzewo")
+				:	'',
+
+				($this->_tbl !== 'IN7_MK_BAZA_DYSTRYBUCJI' && $this->allowTreeView())
+				?	UI::h('a', [ 'class' => "pull-right", 'style' => "padding:0 20px 0 0", 'href' => "index.php?MENU_INIT=VIEWTREE_AJAX&ZASOB_ID={$this->_zasobID}" ], "<i class=\"glyphicon glyphicon-eye-open\"></i> Drzewo")
+				:	'',
+
+				($this->_tbl == 'WMS_MAP_GEOREFERENCES')
+				?	UI::h('a', [ 'class' => "pull-right", 'style' => "padding:0 20px 0 0", 'href' => "index.php?_route=GeoreferencesManager" ], "<i class=\"glyphicon glyphicon glyphicon-wrench\"></i> Zarządzaj punktami")
+				:	'',
+			]),
+
+			($this->_backRefFilter)
+			?	UI::h('div', [ 'class' => "container" ], [
+					UI::h('div', [ 'class' => "alert alert-info" ], [
+						"Rekordy powiązane z rekordem {$this->_backRefFilter['primaryKey']} z ",
+						UI::h('a', [
+							'href' => "index.php?_route=ViewTableAjax&namespace={$this->_backRefFilter['namespace']}",
+						], $this->_backRefFilter['namespace']),
+						" - ",
+						UI::h('a', [
+							'href' => $this->rootUrl,
+							'style' => "color:red",
+						], "usuń filtr"),
+					]),
+				])
+			:	'',
+
+			($this->_childRefFilter)
+			?	UI::h('div', [ 'class' => "container" ], [
+					UI::h('div', [ 'class' => "alert alert-info" ], [
+						"Rekordy powiązane z rekordem {$this->_childRefFilter['primaryKey']} z ",
+						UI::h('a', [
+							'href' => "index.php?_route=ViewTableAjax&namespace={$this->_childRefFilter['namespace']}",
+						], $this->_childRefFilter['namespace']),
+						" - ",
+						UI::h('a', [
+							'href' => $this->rootUrl,
+							'style' => "color:red",
+						], "usuń filtr"),
+					]),
+				])
+			:	'',
+
+			UI::h('div', [ 'id' => $this->_htmlID ]),
+		]);
 		UI::inlineJS(__FILE__ . '.generateFunctionNode.js');
 		UI::inlineJS(__FILE__ . '.GeomField.js');
 		if ($this->showProcesInitFiltr) {
@@ -618,8 +620,11 @@ class TableAjax extends ViewAjax {
 				});
 			}
 
-			//try call webservice for data
-			priv.update(priv.options.router);
+			if (location.hash) {
+				priv.options.router()
+			} else {
+				priv.update(priv.options.router)
+			}
 
 			if (typeof priv.options.router == "function") {
 				$(window).bind('hashchange', function() {
@@ -709,65 +714,37 @@ class TableAjax extends ViewAjax {
 			priv.renderInlineEditBox();// .tblAjax__inlineEditBox
 
 			_foot = _head = _body = _headSort = _headFilter = undefined;// TODO: refactor
-			/// console.log('L.<?php echo __LINE__; ?> priv.initialRender, _uiNode$Table: ', _uiNode$Table.html())
 		};
 
-		/*
-		 creates the table with all its parts and handlers.
-		 note that only the parts we need is created.
-		 (yeah, the function is huge)
-		 */
 		priv.renderTable = function() {
-			//create table itself
-			// console.log('renderTable:: _data', _data);//TODO:DBG:RMME
-			/// console.log('renderTable:: _uiNode$Table', _uiNode$Table);//TODO:DBG:RMME
-
-			//create the header which will later hold both sorting and filtering
-			/// console.log('renderTable:: _head', _head);//TODO:DBG:RMME
+			if (!_state.colsSorted) return;
 			if (!_head) {
 				_headSort = _headFilter = _headSpecialFilter = undefined;
-				//_head = $('<thead></thead>');
-				//	$('<tr class="sort"></tr>').prependTo(_head);
-				//_uiNode$Table.find('thead').replaceWith(_head);
 				_head = _uiNode$Table.find('thead');
 			}
-
-			//create the header sorting row
-			if (!_headSort) {
-				/// console.log('renderTable::renderTableTheadSort...');//TODO:DBG:RMME
-				priv.renderTableTheadSort();
-			}
-
-			//create the header filtering row
+			if (!_headSort) priv.renderTableTheadSort();
 			if (!_headFilter && priv.options.filter) {
-				/// console.log('renderTable::renderTableTheadFilter...');//TODO:DBG:RMME
 				priv.renderTableTheadFilter();
 				_headFilter = true;
 			}
-
-			//create the header special filters row
 			if (!_headSpecialFilter && priv.options.specialFilterFunctions) {
 				priv.renderHeadSpecialFilters();
 				_headSpecialFilter = true;
 			}
-
-			//create the body
 			if (!_body) {
 				_uiNode$Table.find('tbody').remove();
 				_bodyNode = $('<tbody></tbody>').insertAfter(_head);
 				//_bodyNode.on('change', '.unique', priv.rowChecked);
 
-				//find out what rows to show next...
+				// find out what rows to show next...
 				var rowsAdded = 0;
 
-				//slice out the chunk of data we need and create rows
+				// slice out the chunk of data we need and create rows
 				$.each(_data.rows, function(index, props) {
 					var rowNode = priv.renderRow(props);
 					if (rowNode) rowNode.appendTo(_bodyNode);
 					rowsAdded++;
-
-					//enough rows created?
-					if (rowsAdded >= priv.options.pageSize) {
+					if (rowsAdded >= priv.options.pageSize) { // enough rows created
 						return false;
 					}
 				});
@@ -776,8 +753,7 @@ class TableAjax extends ViewAjax {
 					_totalPages = Math.ceil(_data.total / priv.options.pageSize);
 				}
 
-				//pad with empty rows if we're at last page.
-				if (_state.page == _totalPages) {
+				if (_state.page == _totalPages) { // pad with empty rows if we're at last page.
 					while (rowsAdded < priv.options.pageSize) {
 						var rowNode = priv.renderRowEmptyNode();
 						if (rowNode) rowNode.appendTo(_bodyNode);
@@ -786,7 +762,6 @@ class TableAjax extends ViewAjax {
 				}
 			}
 
-			//create the footer
 			if (!_foot) {
 				priv.renderTableTfoot();
 				priv.renderFooter();
@@ -805,19 +780,21 @@ class TableAjax extends ViewAjax {
 				var colsW = stickyCol1Width + stickyCol2Width;
 				jQuery(_uiNodeCont).css({width:'' + (contW - colsW) + 'px', marginLeft:'' + colsW + 'px', overflowX:'scroll', overflowY:'visible', paddingBottom:'1px'});
 			}
-			_uiNode$Table.find('.stickyCol1').css({position:'absolute',
-				left:'0',
-				top:'auto',
-				width:'' + stickyCol1Width + 'px',
+			_uiNode$Table.find('.stickyCol1').css({
+				position: 'absolute',
+				left: '0',
+				top: 'auto',
+				width: '' + stickyCol1Width + 'px',
 			});
 			//_uiNode$Table.find('.filter').find('.stickyCol1').css({height:'34px'});
 			var sortStickyColHeight = _uiNode$Table.find('.sort').find('th:last').outerHeight();
 			_uiNode$Table.find('.sort').find('.stickyCol1').css({height: sortStickyColHeight + 'px'});
 			_uiNode$Table.find('.sort').find('.stickyCol2').css({height: sortStickyColHeight + 'px'});
-			_uiNode$Table.find('.stickyCol2').css({position:'absolute',
-				left:'' + (stickyCol1Width) + 'px',
-				top:'auto',
-				width:'' + stickyCol2Width + 'px',
+			_uiNode$Table.find('.stickyCol2').css({
+				position: 'absolute',
+				left: '' + (stickyCol1Width) + 'px',
+				top: 'auto',
+				width: '' + stickyCol2Width + 'px',
 				borderRight: '1px solid silver',
 				overflow: 'hidden'
 			});
@@ -977,13 +954,24 @@ class TableAjax extends ViewAjax {
 					break;
 				case "special":
 					fieldWidget = (function(fldName, fieldProps) {
-						var _fieldName = fldName,
-								_fieldProps = fieldProps,
-								_format = _.get(_fieldProps, 'format', '{0}');
+						var _fieldName = fldName;
+						var _fieldProps = fieldProps;
+						var _format = _.get(_fieldProps, 'format', '{0}');
+						var _aliasMap = _.get(_fieldProps, 'aliasMap', null);
 						// console.log('FieldWidget: generate function to render field('+_fieldName+') ', fieldProps);
 						return function(val, fieldPK, row) {
-							// console.log('FieldWidget: pk('+fieldPK+') run function to render field('+_fieldName+') with value('+val+') ', fieldProps);
-							return p5Utils__format(_format, [val]);
+							// console.log('FieldWidget: pk('+fieldPK+') run function to render field('+_fieldName+') with value('+val+') ', fieldProps, 'row', row);
+							var format = _format;
+							if (_aliasMap) {
+								Object.keys(_aliasMap).map(function (mapKey) {
+									var mapField = _aliasMap[mapKey]
+									if (undefined !== row[mapField]) {
+										format = format.replace(new RegExp('\{' + mapKey + '\}', 'g'), row[mapField]);
+									}
+									// console.log('FieldWidget: pk('+fieldPK+') run function to render field('+_fieldName+') with value('+val+') _aliasMap:', _aliasMap, 'row['+mapField+']', row[mapField], 'converted val:', val);
+								})
+							}
+							return p5Utils__format(format, [val]);
 						}
 					}(fldName, fieldProps));
 					break;
@@ -2091,14 +2079,14 @@ class TableAjax extends ViewAjax {
 		priv.update = function(callback) {
 			var skipCols, resetChecked;// undefined
 			if (!priv.options.url) {
-				if (priv.options.debug) console.log('no url found L.<?php echo __LINE__; ?>');
+				if (priv.options.debug) console.log('no url found');
 				return;
 			}
 
-			if (priv.options.debug) console.log(p5Utils__format('requesting data from url:{0} data:{1} L.<?php echo __LINE__; ?>', [priv.options.url, JSON.stringify(priv.options.urlData) || '']));
+			if (priv.options.debug) console.log(p5Utils__format('requesting data from url:{0} data:{1}', [priv.options.url, JSON.stringify(priv.options.urlData) || '']));
 
-			var initUrlAdd = '',
-				filtersInitSet = false;
+			var initUrlAdd = '';
+			var filtersInitSet = false;
 			initUrlAdd += '&currSortCol=' + _state.filters.currSortCol;
 			initUrlAdd += '&currSortFlip=' + ((_state.filters.currSortCol)? "desc" : "asc");
 			if (Object.keys(_state.filters.filterCols).length > 0) {
@@ -2130,52 +2118,58 @@ class TableAjax extends ViewAjax {
 			}).then(function (response) {
 				return response.json()
 			}).then(function (data) {
-				if (priv.options.debug) console.log('loadDataAjax:fetch:update: request finished L.<?php echo __LINE__; ?> data:', data);
+				if (priv.options.debug) console.log('loadDataAjax:fetch:update: request finished response data:', data);
 				if ('success' == data.type) {
 					// p5UI__notifyAjaxCallback(data);
-					if (data && data.cols) {
-						priv.setStateCols(data.cols, data.primaryKey);
-					}
-
-					// set initial filters (_state.filters.filterCols)
-					if (filtersInitSet && _data && _data.cols) {
-						$.map(reqData, function(fltrValue, fltr){
-							var colName = null;
-							if (fltr.substr(0, 3) == 'sf_') {
-								colName = fltr.substr(3);
-							}
-							else if (fltr.substr(0, 2) == 'f_') {
-								colName = fltr.substr(2);
-							}
-
-							if (colName && _data.cols[colName]) {
-								//add the filter to the filter array
-								_state.filters.filterCols[colName] = {
-									filter: fltrValue,
-									colName: colName
-								};
-							}
-						});
-					}
-
-					// assign the new state (data)
-					state = {data: {}};
-					if (!skipCols) state.data.cols = data.cols || {};
-					state.data.rows = data.rows || [];
-					state.data.total = data.total || 0;
-					state.page = data.page || 0;
-					state.pageSize = data.pageSize || priv.options.pageSize;
-					state.filters = data.filters || {};
-					priv.setState(state);
-
-					if (typeof callback == "function") {
-						callback.call(this);
-					}
+					return data;
 				} else if ('error' == data.type) {
 					p5UI__notifyAjaxCallback(data);
 				} else {
 					p5UI__notifyAjaxCallback(data);
 				}
+				return null;
+			}).then(function (data) {
+				if (priv.options.debug) console.log('loadDataAjax:fetch:update: request finished data:', data);
+				if (!data) return;
+				if (data && data.cols) {
+					priv.setStateCols(data.cols, data.primaryKey);
+				}
+
+				// set initial filters (_state.filters.filterCols)
+				if (filtersInitSet && _data && _data.cols) {
+					$.map(reqData, function(fltrValue, fltr){
+						var colName = null;
+						if (fltr.substr(0, 3) == 'sf_') {
+							colName = fltr.substr(3);
+						}
+						else if (fltr.substr(0, 2) == 'f_') {
+							colName = fltr.substr(2);
+						}
+
+						if (colName && _data.cols[colName]) {
+							//add the filter to the filter array
+							_state.filters.filterCols[colName] = {
+								filter: fltrValue,
+								colName: colName
+							};
+						}
+					});
+				}
+
+				// assign the new state (data)
+				state = {data: {}};
+				if (!skipCols) state.data.cols = data.cols || {};
+				state.data.rows = data.rows || [];
+				state.data.total = data.total || 0;
+				state.data.primaryKey = data.primaryKey || 'ID';
+				state.page = data.page || 0;
+				state.pageSize = data.pageSize || priv.options.pageSize;
+				state.filters = data.filters || {};
+				priv.setState(state);
+
+				if (typeof callback == "function") {
+					callback.call(this);
+				}
 			}).catch(function (e) {
 				console.log('loadDataAjax:fetch: ERR:', e);
 			});
@@ -2185,15 +2179,15 @@ class TableAjax extends ViewAjax {
 		 assigns the new data.
 		 */
 		priv.setState = function(state) {
-			var oldState = _state,// TODO: use to check what really changed (use extend!)
-					renderParts = {};
+			var oldState = _state; // TODO: use to check what really changed (use extend!)
+			var renderParts = {};
 			if (state.data) {
-				if (state.data.cols && state.data.cols.length > 0) {// TODO: never happen, but if happend then rerender all
+				if (state.data.cols && Object.keys(state.data.cols).length > 0) {// TODO: never happen, but if happend then rerender all
 					priv.setStateCols(state.data.cols, state.data.primaryKey);
 					priv.setStateData(state.data);
 					renderParts['head'] = true;
 				} else {
-					priv.setStateData(state.data, true);
+					priv.setStateData(state.data);
 				}
 				renderParts['body'] = true;
 				renderParts['foot_pagination'] = true;
@@ -2215,9 +2209,7 @@ class TableAjax extends ViewAjax {
 				}
 			}
 			if (state.hasOwnProperty('filters')) {
-/// console.log('L.<?php echo __LINE__; ?> setState::state.filters: ', state.filters);//TODO:DBG:RMME
 				priv.setStateFilters(state.filters);
-				// TODO: if state diff's
 				renderParts['head__specialFilters'] = true;
 				renderParts['foot_pagination'] = true;
 			}
@@ -2225,15 +2217,15 @@ class TableAjax extends ViewAjax {
 			renderParts = Object.keys(renderParts);
 
 			if (priv.options.debug) console.log('setState::renderParts: ', renderParts);//TODO:DBG:RMME
-///console.log('L.<?php echo __LINE__; ?> setState::renderParts: ', renderParts);//TODO:DBG:RMME
 			if (renderParts.length > 0) {
 				jQuery(_uiNodeCont).trigger('TableAjax:render', renderParts);
 			}
 		};
 
 		priv.setStateCols = function(cols, primaryKey) {
+			if (priv.options.debug) console.log('priv.setStateCols: ', {primaryKey: primaryKey, cols: cols});
 			_state.cols = cols;
-			_state.primaryKey = primaryKey;
+			_state.primaryKey = primaryKey || _state.primaryKey;
 			// fix col name - props.column
 			$.each(_state.cols, function(col, props) {
 				props.column = col;
@@ -3367,8 +3359,7 @@ class TableAjax extends ViewAjax {
 			priv.loadPage(page, pageSize);
 		}
 		priv.loadPage = function(page, pageSize) {
-			var skipCols = true, // skipCols = true - prevent columns delete
-				resetChecked = false;
+			var resetChecked = false;
 			var reqData = {
 				page: page,
 				pageSize: (pageSize || priv.options.pageSize),
@@ -3387,7 +3378,6 @@ class TableAjax extends ViewAjax {
 						urlAdd += '&f_' + col + '=' + encodeURIComponent(colProps.filter);
 					}
 				});
-				skipCols = true;
 			}
 
 			// specialFilters
@@ -3417,9 +3407,10 @@ class TableAjax extends ViewAjax {
 				// p5UI__notifyAjaxCallback(data);
 				if ('success' == data.type) {
 					state = {data: {}};
-					if (!skipCols) state.data.cols = data.cols || {};
+					state.data.cols = data.cols || {};
 					state.data.rows = data.rows || [];
 					state.data.total = data.total || 0;
+					state.data.primaryKey = data.primaryKey || 'ID';
 					state.page = data.page || 0;
 					state.pageSize = data.pageSize || priv.options.pageSize;
 					state.filters = data.filters || {};
@@ -4826,7 +4817,12 @@ jQuery(document).ready(function(){
 		if (!$record) throw new HttpException("404: No item ID({$id})", 404);
 
 		$visibleCols = $acl->getRealFieldList();
-		$rowsHist = $acl->getHistItems($id);
+		try {
+			$rowsHist = $acl->getHistItems($id);
+		} catch (Exception $e) {
+			DBG::log($e);
+			$rowsHist = [];
+		}
 
 		$jsonResponse['row_functions'] = $this->_parseRowFunctions($record['ID'], array('hist', 'cp'), $showLabel = true);
 
@@ -5653,8 +5649,8 @@ jQuery(document).ready(function(){
 						switch ($typeName) {
 							case 'enum': $columnConfig->type = 'string'; break;
 							case 'alias': {
-								$format = $acl->getXsdFieldParam($col, 'format');
-								if ($format) $columnConfig->format = $format;
+								if ($format = $acl->getXsdFieldParam($col, 'format')) $columnConfig->format = $format;
+								if ($aliasMap = $acl->getXsdFieldParam($col, 'aliasMap')) $columnConfig->aliasMap = $aliasMap;
 							} break;
 							case 'string': {
 								$columnConfig->type = 'p5:string';
@@ -5823,11 +5819,16 @@ jQuery(document).ready(function(){
 								$sqlRemoteValueFieldName = V::get('remote_column_value', '', $conf);
 								$sqlRemoteKeyName = V::get('remote_join_key', '', $conf);
 								$sqlLocalKeyName = $acl->getSqlFieldName($localKeyName);
-								$aliasValuesRaw = DB::getPDO()->fetchAllByKey("
-									select r.{$sqlRemoteKeyName} as {$sqlLocalKeyName}, r.{$sqlRemoteValueFieldName} as remote_value
-									from {$sqlRemoteTable} r
-									where r.{$sqlRemoteKeyName} in(" . implode(",", $localKeys[$localKeyName]) . ")
-								", $sqlLocalKeyName);
+								try {
+									$aliasValuesRaw = DB::getPDO()->fetchAllByKey("
+										select r.{$sqlRemoteKeyName} as {$sqlLocalKeyName}, r.{$sqlRemoteValueFieldName} as remote_value
+										from {$sqlRemoteTable} r
+										where r.{$sqlRemoteKeyName} in(" . implode(",", $localKeys[$localKeyName]) . ")
+									", $sqlLocalKeyName);
+								} catch (Exception $e) {
+									// TODO: error msg for GUI
+									DBG::log($e);
+								}
 								if(V::get('DBG', '', $_GET)){$jsonData->__DBG__['$aliasValuesRaw'][$fieldName] = $aliasValuesRaw;}
 							}
 						}
@@ -5847,7 +5848,12 @@ jQuery(document).ready(function(){
 						if (!empty($localKeys[$localKeyName])) {
 							$sql = str_replace('{sql_in_local_join_key}', implode(",", $localKeys[$localKeyName]), $sqlFormat);
 							$sqlLocalKeyName = $acl->getSqlFieldName($localKeyName);
-							$aliasValuesRaw = DB::getPDO()->fetchAllByKey($sql, $sqlLocalKeyName);
+							try {
+								$aliasValuesRaw = DB::getPDO()->fetchAllByKey($sql, $sqlLocalKeyName);
+							} catch (Exception $e) {
+								// TODO: error msg for GUI
+								DBG::log($e);
+							}
 						}
 					}
 					DBG::log($aliasValuesRaw, 'array', '$aliasValuesRaw');