Script - Adjuntar un documento a un objeto mediante vbScript

Creado por David Miralpeix, Modificado el Fri, 16 Feb 2024 a las 12:28 PM por David Miralpeix

El proceso que se encarga de vincular el documento, "CreaNuevoDoc", está registrado en el repositorio de procesos de la tabla ahora_procesos.
Los parámetros que recibe son:

aTipoDoc as _doctipo, aNDoc AS _doc, IdDocObj as Long, absolutePathFile as String, [aIdPlantilla as Long=0], [aObjAplicacion as Object], [aDocPadre As Object], [aUpdate As Boolean=False]


Para adjuntar un documento es necesario:
1- tener definido al menos un tipo de documento y una clasificación. Tablas: Documentos_Tipo, Documentos_Clasificacion
2- que el usuario tenga acceso a la ruta del archivo.
3- Tener definido el path de la gestión documental.


Código VB6:

' Ejemplo a utilizar desde script creado en el panel de favoritos.
Sub Main()
     frmAux.Descargar 'ATENCIÓN: DEBE ESTAR SIEMPRE QUE NO SE MUESTRE EL FORMULARIO.
     Set lDoc = gCn.Obj.DameObjStr("Doc")
     'Tipo de fichero, clasificación.
Set lObjTipo = gcn.obj.DameObjeto("DocTipos","Where Origen = 'Fichero'")

'Selecciona el objeto del que lo quieres colgar
      Set lObj = gcn.obj.DameObjeto("Empleados","Where IdDoc = 1")'Objeto del que lo quieres colgar.

       If Not lDoc Is Nothing Then
           lDoc.Propiedades ("Origen")= "Fichero" 'Origen "fichero" debe existir en la tabla Documentos_Tipo
           lDoc.Propiedades ("Nombre") = "[Nombre que le quieras dar]"
           lDoc.Propiedades ("IdClasificacion") = 0 ' Clasificación 0 debe existir en la tabla Documentos_Clasificacion
           lDoc.Propiedades("IdArbol") = -1
           lDoc.Propiedades("Tabla") = lObj.Tipo
           lDoc.Propiedades("IdDocObjeto") = lObj.propiedades("IdDoc")

           lFichero = "C:\aaa.txt"'Ruta origen del fichero
           gCn.AhoraProceso "CreaNuevoDoc", False, lObjTipo, lDoc ,lObj.Propiedades("IdDoc"),lFichero ,,,,True

       End If

End Sub


Código C#:

using AhoraCore;
using AhoraDoc;
using AhoraOCX;
using AhoraSistema;
using static AhoraCore.VBA.Interaction;

namespace AhoraScriptsVacia
{
    public class Script_59 : AhoraOCX.AhoraBaseScript
    {
        public void Main()
        {
            IDoc lDoc = (IDoc)gCn.Obj.DameObjStr("Doc");

            // Tipo de fichero, clasificación
            IDocTipo lObjTipo = (IDocTipo)gCn.Obj.DameObjeto("DocTipos", "WHERE Origen = 'Fichero'");

            // Selecciona el objeto del que lo quieres colgar
            IItem lObj = (IItem)gCn.Obj.DameObjeto("Empleados", "WHERE IdDoc = 1");

            if (lObj != null)
            {
                lDoc["Origen"] = "Fichero";         // Origen "Fichero" debe existir en la tabla Documentos_Tipo
                lDoc["Nombre"] = "Nombre";
                lDoc["IdClasificacion"] = 0;        // Clasificación 0 debe existir en la tabla Documentos_Clasificacion
                lDoc["IdArbol"] = -1;
                lDoc["Tabla"] = lObj.Tipo;
                lDoc["IdDocObjeto"] = lObj["IdDoc"];

                string lFichero = "C:\\TEMP\\aaa.txt"; // Ruta origen del fichero
                gCn.AhoraProceso("CreaNuevoDoc", out _, lObjTipo, lDoc, lObj["IdDoc"], lFichero, null, null, null, true);
            }

        }
    }
}

¿Le ha sido útil este artículo?

¡Qué bien!

Gracias por sus comentarios

¡Sentimos mucho no haber sido de ayuda!

Gracias por sus comentarios

¡Háganos saber cómo podemos mejorar este artículo!

Seleccione al menos una de las razones
Se requiere la verificación del CAPTCHA.

Sus comentarios se han enviado

Agradecemos su esfuerzo e intentaremos corregir el artículo