Born on April 2, 1980. Married, 1 child.
Bachelor's degree in Information Systems.
Dynamic and proactive, he works collaboratively in teams, always seeking knowledge and challenges.
A knowledge disseminator, he is always engaged in the team's mutual growth, prioritizing the continuous evolution of knowledge and always applying best practices.
Certified in InterSystems technologies.
Experienced professional in systems architecture, solutions, and systems interoperability, with over 20 years of experience in complex, large-scale projects across various sectors, including healthcare, automotive, oil and gas, and financial services.
I have a proven track record of success in defining software architectures, leading development teams, and delivering innovative solutions that meet business needs.
I am capable of working with a wide range of technologies and platforms, and I have a strong commitment to quality, efficiency, and value delivery.
Skills:
- Solution Architecture: Defining reference architectures, design patterns, system modeling (UML), service-oriented architecture (SOA), microservices, event architecture.
- Software Development: Java, C#, Python, JavaScript, SQL, COS (Caché Object Script), R.
- Systems Integration: InterSystems (IRIS, Health Connect, Ensemble), HL7, FHIR, REST, SOAP, Mule Soft.
- Databases: SQL Server, Oracle, InterSystems Caché/IRIS, MongoDB.
- DevOps: Docker, AWS, Azure.
- Methodologies: Agile (Scrum, Kanban), Waterfall.
- Business Intelligence: Tableau, Power BI, TIBCO Spotfire, SAP BusinessObjects.
Olá Edilson, você pode fazer o upload de arquivo através de um página CSP, utilizando um input do tipo file e fazendo o submit do arquivo e depois salva a stream no servidor utilizando a classe %File. Abaixo um exemplo, pode ter erro pois não executei.
Class cjs.UlpoadArquivo Extends %CSP.Page
{
ClassMethod OnPage() As %Status
{
&HTML<
<form method="post" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit" />
</form>
>
Return $System.Status.OK()
}
ClassMethod OnPreHTTP() As %Boolean [ ServerOnly = 1 ]
{
#Dim %request As %CSP.Request = %request
If (%request.Method = "POST" && %request.GetMimeData("file"))
{
#Dim arquivo As %File = ##Class(%File).%New("<caminho/nomeArquivo>")
#Dim statusCode As %Status = arquivo.Open("NWS")
If ($System.Status.IsError(statusCode))
{
#Dim mensagemErro As %String = $System.Status.GetErrorText(statusCode)
&HTML<
<span>Erro ao criar arqvuio #(mesnagemErro)# </span>
>
Return $System.Status.OK()
}
Set statuCode = arquivo.CopyForm(%request.GetMimeData("file"))
If ($System.Status.IsError(statusCode))
{
Set mensagemErro = $System.Status.GetErrorText(statusCode)
&HTML<
<span>Erro ao salvar arqvuio #(mesnagemErro)# </span>
>
Return $System.Status.OK()
}
Do arquivo.Close()
&HTML<
<span>Arquivo carregado para o servidor com sucesso.</span>
>
}
Return $System.Status.OK()
}
Olá Edilson,
Existem rotinas legadas que fazem isso em especial %RIMF (importar) e %ROMF (exportar). veja a documetnaçao das rotinas legadas que ainda funcionam no IRIS https://docs.intersystems.com/priordocexcerpts/prgroutinechui-41.pdf










Olá @Guilherme Silva
Você deve ter um servidor HTTP, (apache, iis, nginx) com https habilitado e com o webgateway configurado, dessa forma toda a comunicação com IRIS será segura mesmo antes de fornecer o token JWT.
Este artigo demonstra uma configuração https com IIS
HTTP and HTTPS with REST API | InterSystems Developer Community | Contest
Este outro link é um container com apache e letsencript que você pode usar como base
https://github.com/lscalese/isc-webgateway-letsencrypt