Boas Práticas Regulatórias

A forma como as agências reguladoras atuam muda no decorrer do tempo. As agências devem sempre observar como outros órgãos solucionam problemas semelhantes e quais ações levam aos melhores resultados, ou seja, quais são as boas práticas que a agência pode adotar.

Para manter os servidores da ANTT informados sobre boas práticas regulatórias nacionais e internacionais, sobre eventos e publicações relevantes para o trabalho, a ANTT deu início à publicação Panorama Regulatório. O Panorama Regulatório permite que as melhores práticas e os conhecimentos regulatórios nacionais e internacionais sejam disseminados à ANTT para que os servidores possam aprender com o resto do Brasil e do mundo. Para saber mais sobre o acompanhamento da OCDE visite o site de Atuação internacional da ANTT

Leia abaixo as edições disponíveis.

Um erro ocorreu enquanto processava o modelo.
Java method "com.sun.proxy.$Proxy217.getFileEntryByUuidAndGroupId(String, long)" threw an exception when invoked on com.sun.proxy.$Proxy217 object "com.liferay.portlet.documentlibrary.service.impl.DLFileEntryServiceImpl@2e25aafc"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign file = dlFileEntryService.get...  [in template "20098#20124#363806" in function "getDocDate" at line 149, column 3]
----
1<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
2<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService" )> 
3<#assign currentArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data)> 
4 
5<div class="row secao-download"> 
6  <div class="col-md-4"> 
7    <div class="card card-primary ${TamanhoDoCartao.getData()} text-center bg-primary"> 
8      <div class="card-body"> 
9        <div class="content"> 
10          <#if IconeDoCartao.getData()?has_content> 
11            <i class="fa ${IconeDoCartao.getData()}"></i> 
12          <#elseif IconePersonalizadoDoCartao.getData()?? && IconePersonalizadoDoCartao.getData() != ""> 
13            <img  
14              class="card-icone-personalizado"  
15              alt="${IconePersonalizadoDoCartao.getAttribute('alt')}"  
16              data-fileentryid="${IconePersonalizadoDoCartao.getAttribute('fileEntryId')}"  
17              src="${IconePersonalizadoDoCartao.getData()}"  
18            /> 
19          <#else> 
20            <i class="icone-card fa fa-download"></i> 
21          </#if> 
22           
23          <h4 class="card-title">${TituloDoCartao.getData()}</h4> 
24        </div> 
25      </div> 
26    </div> 
27  </div> 
28 
29  <div class="col-md-8"> 
30    <#if HTML.getSiblings()?has_content> 
31      <#list HTML.getSiblings() as cur_HTML> 
32        <#if cur_HTML?has_content> 
33          <div class="card-html">${cur_HTML.getData()}</div> 
34        </#if> 
35 
36        <#if cur_HTML.Documentos.getSiblings()?has_content> 
37          <ul class="list-group"> 
38            <#list cur_HTML.Documentos.getSiblings() as cur_Documento> 
39              <#if cur_Documento.getData()?? && cur_Documento.getData() != ""> 
40                <#assign dataDoc = getDocDate(cur_Documento)?string('dd/MM/yyyy') /> 
41                <#assign horaDoc = getDocDate(cur_Documento)?string('HH') /> 
42                <#assign minutoDoc = getDocDate(cur_Documento)?string('mm') /> 
43                <#assign tipoArquivo = getDocType(cur_Documento)?upper_case /> 
44                <#assign iconeArquivo = "fas fa-file-download" /> 
45                <#if tipoArquivo == "XLSX" || tipoArquivo == "XLS" > 
46                  <#assign tipoArquivo = "Excel" /> 
47                  <#assign iconeArquivo = "fas fa-file-excel" /> 
48                <#elseif tipoArquivo == "DOCX" || tipoArquivo == "DOC" > 
49                  <#assign tipoArquivo = "Word" /> 
50                  <#assign iconeArquivo = "fas fa-file-word" /> 
51                <#elseif tipoArquivo == "PPTX" || tipoArquivo == "PPT" > 
52                  <#assign tipoArquivo = "Power Point" /> 
53                  <#assign iconeArquivo = "fas fa-file-powerpoint" /> 
54                <#elseif tipoArquivo == "ZIP" || tipoArquivo == "TAR" || tipoArquivo == "GZ" || tipoArquivo == "7Z" || tipoArquivo == "TAR.GZ" || tipoArquivo == "Z" || tipoArquivo == "BZ2" || tipoArquivo == "XZ" || tipoArquivo == "RAR" || tipoArquivo == "ARJ" > 
55                  <#assign iconeArquivo = "fas fa-file-archive" /> 
56                <#elseif tipoArquivo == "PDF" > 
57                  <#assign iconeArquivo = "fas fa-file-pdf" /> 
58                <#elseif tipoArquivo == "AVI" || tipoArquivo == "MOV" || tipoArquivo == "MP4" || tipoArquivo == "M4V" || tipoArquivo == "MKV" || tipoArquivo == "MPEG" || tipoArquivo == "MPG" || tipoArquivo == "MV" || tipoArquivo == "QT"> 
59                  <#assign tipoArquivo = "de vídeo" /> 
60                  <#assign iconeArquivo = "fas fa-file-video" /> 
61                <#elseif tipoArquivo == "AIF" || tipoArquivo == "AIFF" || tipoArquivo == "AU" || tipoArquivo == "M4A" || tipoArquivo == "MP3" || tipoArquivo == "MPA" || tipoArquivo == "WAV" > 
62                  <#assign tipoArquivo = "de áudio" /> 
63                  <#assign iconeArquivo = "fas fa-file-audio" /> 
64                <#elseif tipoArquivo == "BMP" || tipoArquivo == "GIF" || tipoArquivo == "JPE" || tipoArquivo == "JPEG" || tipoArquivo == "JPG" || tipoArquivo == "PNG" || tipoArquivo == "TIF" || tipoArquivo == "TIFF" || tipoArquivo == "AI" || tipoArquivo == "PSD" || tipoArquivo == "CDR" || tipoArquivo == "SVG" > 
65                  <#assign tipoArquivo = "de imagem" /> 
66                  <#assign iconeArquivo = "fas fa-file-image" /> 
67                <#elseif tipoArquivo == "HTM" || tipoArquivo == "HTML" || tipoArquivo == "CSS" || tipoArquivo == "SCSS" || tipoArquivo == "JS" || tipoArquivo == "CSV" || tipoArquivo == "XML" || tipoArquivo == "CLASS" > 
68                  <#assign tipoArquivo = "de código" /> 
69                  <#assign iconeArquivo = "fas fa-file-code" /> 
70                <#elseif tipoArquivo == "EXE" || tipoArquivo == "DMG" > 
71                  <#assign tipoArquivo = "executável" /> 
72                  <#assign iconeArquivo = "fas fa-exclamation-circle" /> 
73                <#elseif tipoArquivo == "TXT" > 
74                  <#assign tipoArquivo = "de texto" /> 
75                  <#assign iconeArquivo = "fas fa-file-alt" /> 
76                <#elseif tipoArquivo == "TXT" > 
77                  <#assign tipoArquivo = "de texto" /> 
78                  <#assign iconeArquivo = "fas fa-file-alt" /> 
79                </#if> 
80                <li class="list-group-item list-group-item-flex list-group-item-primary"> 
81                  <div class="autofit-col"> 
82                    <div class="sticker"> 
83                      <span class="inline-item"> 
84                        <i class="icone-arquivo ${iconeArquivo}"></i> 
85                      </span> 
86                    </div> 
87                  </div> 
88 
89                  <div class="autofit-col autofit-col-expand"> 
90                    <section class="autofit-section"> 
91                      <div class="list-group-title"> 
92                        <#if !cur_Documento.getData()?contains("/")> 
93                          <#assign doc = cur_Documento.getData()?eval /> 
94                          <#assign groupid = doc.groupId /> 
95                          <#assign title = doc.title?url('ISO-8859-1') /> 
96                          <#assign uuid = doc.uuid /> 
97                          <a  
98                            href="/documents/${groupid}/0/${title}/${uuid}"  
99                            target="_blank" 
100                            title="Acesso à ${doc.title}" 
101
102                            ${doc.title} 
103                          </a> 
104                        <#else> 
105                          <a  
106                            href="${cur_Documento.getData()}"  
107                            target="_blank" 
108                            title="Acesso à ${getDocTitle(cur_Documento)?keep_before_last('.')}" 
109
110                            ${getDocTitle(cur_Documento)?keep_before_last(".")} 
111                          </a> 
112                        </#if> 
113                      </div> 
114 
115                      <p class="list-group-subtext">${dataDoc} ${horaDoc}h${minutoDoc} Arquivo ${tipoArquivo}</p> 
116                    </section> 
117                  </div> 
118                </li> 
119              </#if> 
120            </#list> 
121          </ul> 
122        </#if> 
123      </#list> 
124    </#if> 
125  </div> 
126</div> 
127 
128<#function getDocTitle cur_Documento> 
129  <#assign groupId = 0 /> 
130  <#assign uuId = 0 /> 
131  <#list cur_Documento.getData()?keep_before_last("?")?split("/") as linkPart> 
132    <#assign groupId = (linkPart?index == 2)?then(linkPart?number, groupId) /> 
133    <#assign uuId = (linkPart?index == 5)?then(linkPart, uuId) /> 
134  </#list> 
135  <#assign dlFileEntryService = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService') />  
136  <#assign file = dlFileEntryService.getFileEntryByUuidAndGroupId(uuId,groupId)  /> 
137  <#assign tituloDoc = file.fileName /> 
138  <#return tituloDoc> 
139</#function> 
140 
141<#function getDocDate cur_Documento>  
142  <#assign groupId = 0 /> 
143  <#assign uuId = 0 /> 
144  <#list cur_Documento.getData()?keep_before_last("?")?split("/") as linkPart> 
145    <#assign groupId = (linkPart?index == 2)?then(linkPart?number, groupId) /> 
146    <#assign uuId = (linkPart?index == 5)?then(linkPart, uuId) /> 
147  </#list> 
148  <#assign dlFileEntryService = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService') />  
149  <#assign file = dlFileEntryService.getFileEntryByUuidAndGroupId(uuId,groupId)  /> 
150  <#assign dateDoc = file.getModifiedDate() /> 
151  <#return dateDoc> 
152</#function> 
153 
154<#function getDocType cur_Documento>  
155  <#assign groupId = 0 /> 
156  <#assign uuId = 0 /> 
157  <#list cur_Documento.getData()?keep_before_last("?")?split("/") as linkPart> 
158    <#assign groupId = (linkPart?index == 2)?then(linkPart?number, groupId) /> 
159    <#assign uuId = (linkPart?index == 5)?then(linkPart, uuId) /> 
160  </#list> 
161  <#assign dlFileEntryService = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService') />  
162  <#assign file = dlFileEntryService.getFileEntryByUuidAndGroupId(uuId,groupId)  /> 
163  <#assign typeDoc = file.getExtension() /> 
164  <#return typeDoc> 
165</#function>