Is there any way to prevent the file from being overwritten when it does not have the same name or title? I tried to do something with a script, but it is not working.
Dim nomeArquivoNovo, nomeMetadado
Const ID_PROPRIEDADE_NOME = 0
Function NormalizeText(text)
NormalizeText = LCase(Trim(text))
End Function
Sub Log(text)
Dim fso, arquivoLog
Set fso = CreateObject("Scripting.FileSystemObject")
Set arquivoLog = fso.OpenTextFile("C:\logs\log.txt", 8, True)
arquivoLog.WriteLine text
arquivoLog.Close
End Sub
Dim arquivos
Set arquivos = Vault.ObjectFileOperations.GetFiles(objVer)
If arquivos.Count > 0 Then
Dim arquivoAtual, posExt
arquivoAtual = arquivos(1).GetNameForFileSystem
Log "Nome completo do arquivo atual: " & arquivoAtual
posExt = InStrRev(arquivoAtual, ".")
If posExt > 0 Then
nomeArquivoNovo = NormalizeText(Mid(arquivoAtual, 1, posExt - 1))
Else
nomeArquivoNovo = NormalizeText(arquivoAtual)
End If
Log "Nome do arquivo novo (normalizado): " & nomeArquivoNovo
Else
Err.Raise MFScriptCancel, "Erro: Nenhum arquivo associado ao objeto."
End If
Dim propValues
Set propValues = Vault.ObjectPropertyOperations.GetProperties(objVer)
nomeMetadado = NormalizeText(propValues.SearchForProperty(ID_PROPRIEDADE_NOME).TypedValue.DisplayValue)
Log "Nome do arquivo novo: " & nomeArquivoNovo & " | Nome do metadado: " & nomeMetadado
If nomeArquivoNovo <> nomeMetadado Then
Log "Discrepância detectada: nomeArquivoNovo <> nomeMetadado"
Err.Raise MFScriptCancel, "Aviso: O nome do arquivo não corresponde ao nome registrado no metadado. Verifique o arquivo antes de prosseguir."
End If