Caríssimos, acho que eu tô louco. Bom dia a todos.
Coloquei uma macro no Módulo certinho e o nome dos objetos estão certinhos e ela insiste que não acha logo o primeiro, que é o do próprio formulário. Se alguém tiver tempo, pode dar uma olhada e ver se fiz alguma merda? Tô olhando há três dias pra isso e ficando cada vez mais puto.
Sub InsertFile()
Dim oForm As Object
Dim oButton As Object
Dim oDialog As Object
Dim sFilePath As String
Dim sFileContent As String
Dim oField As Object
' Obtenha o formulário atual
oForm = ThisComponent.Drawpage.Forms.GetByName("DistribuicaoTarefas")
' Obtenha o botão de inserção de arquivo
oButton = oForm.getByName("Inserir_Arquivo")
' Abra a caixa de diálogo para selecionar o arquivo
oDialog = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
oDialog.initialize(Array())
oDialog.execute()
' Obtenha o caminho do arquivo selecionado
sFilePath = oDialog.getFiles().get(0)
' Leia o conteúdo do arquivo
sFileContent = ReadFileContent(sFilePath)
' Obtenha o campo onde deseja armazenar o conteúdo do arquivo
oField = oForm.getByName("Documentacao_I")
' Defina o conteúdo do campo
oField.Text = sFileContent
' Atualize o formulário
oForm.reload()
End Sub
Function ReadFileContent(sFilePath As String) As String
Dim oStream As Object
Dim sFileContent As String
On Error GoTo ErrorHandler
' Abra o arquivo em modo de leitura binária
oStream = CreateUnoService("com.sun.star.io.TextInputStream")
oStream.initialize(ConvertToURL(sFilePath), 0, True)
' Leia o conteúdo do arquivo
sFileContent = oStream.readString(LOCALE_LF)
' Feche o stream
oStream.closeInput()
ReadFileContent = sFileContent
Exit Function
ErrorHandler:
’ Lida com erros, se necessário
ReadFileContent = ""
End Function