Referencia de scripts

Anuncio
Workflow Composer
Referencia de scripts
Para ver o descargar ésta u otra publicación de Lexmark Document Solutions, haga clic aquí.
Octubre de 2003
www.lexmark.com
Edición: octubre de 2003
El siguiente párrafo no tiene vigencia en aquellos países en los que estas disposiciones entren en conflicto
con las leyes locales: LEXMARK INTERNATIONAL, INC. PROPORCIONA ESTA PUBLICACIÓN "TAL COMO
ESTÁ" SIN GARANTÍA DE NINGÚN TIPO, NI EXPRESA NI IMPLÍCITA, INCLUIDA PERO NO LIMITADA A LAS
GARANTÍAS IMPLÍCITAS DE COMERCIALIDAD O DE APTITUD PARA UN PROPÓSITO ESPECÍFICO. En algunos
estados no se permite la renuncia de garantías implícitas o explícitas en determinadas transacciones, por lo que
puede que esta declaración no se aplique.
La presente publicación puede incluir imprecisiones técnicas o errores tipográficos. De forma periódica, se realizan
modificaciones en la información aquí contenida; dichas modificaciones se incorporarán en ediciones posteriores.
En cualquier momento se pueden realizar mejoras o cambios en los productos o programas descritos.
Si desea realizar algún comentario sobre esta publicación, puede dirigirse a Lexmark International, Inc., Department
F95 / 032-2, 740 West New Circle Road, Lexington, Kentucky 40550, EE.UU. En el Reino Unido e Irlanda, envíelos
a Lexmark International Ltd., Marketing and Services Department, Westhorpe House, Westhorpe, Marlow Bucks
SL7 3RQ. Lexmark puede utilizar o distribuir cualquier información que suministre de la forma que crea conveniente
sin que ello implique ninguna obligación. Puede adquirir copias adicionales de las publicaciones relacionadas con este
producto llamando al 1-800-553.9727. En el Reino Unido e Irlanda, llame al +44 (0)8704 440 044. En los demás
países, póngase en contacto con el establecimiento de venta.
Las referencias en esta publicación a productos, programas o servicios no implican que el fabricante pretenda
ponerlos a disposición en todos los países en los que opera. Cualquier referencia a un producto, un programa
o un servicio no implica que sólo se deba utilizar dicho producto, programa o servicio. En su lugar, se puede utilizar
cualquier producto, programa o servicio de funcionalidad equivalente que no infrinja ningún derecho de propiedad
intelectual existente. Es responsabilidad del usuario la evaluación y verificación de funcionamiento junto con otros
productos, programas o servicios, a excepción de los designados expresamente por el fabricante.
ImageQuick, Optra, Lexmark y Lexmark con diamante son marcas comerciales de Lexmark International, Inc.,
registradas en los Estados Unidos y/o en otros países.
PostScript® es una marca registrada de Adobe Systems Incorporated.
Otras marcas comerciales pertenecen a sus respectivos propietarios.
© Copyright 2003 Lexmark International, Inc.
Reservados todos los derechos.
DERECHOS DEL GOBIERNO DE LOS ESTADOS UNIDOS
Este software y la documentación que lo acompaña que se proporcionan según este acuerdo constituyen software
y documentación comercial de ordenador desarrollados exclusivamente con capital privado.
Contenido
Capítulo 1: Introducción ............................................................... 1
Compatibilidad................................................................................................ 2
Novedades en la versión 3.2 .......................................................................... 2
Capítulo 2: Conceptos básicos .................................................... 3
Objetos ........................................................................................................... 3
Declaración de variables ................................................................................ 4
Control de flujo ............................................................................................... 4
If/Then/Else .............................................................................................. 4
Switch/Case .............................................................................................. 5
Sentencias repetitivas .................................................................................... 6
Loop .......................................................................................................... 6
Repeat ...................................................................................................... 7
Operadores .................................................................................................... 9
Matemáticos ............................................................................................. 9
Comparación .......................................................................................... 10
Booleanos ............................................................................................... 11
Otras características .................................................................................... 12
Abreviatura de objetos con "with" ........................................................... 12
Depuración de un script .......................................................................... 12
Concatenación de comentarios y líneas de código en un script ............ 13
Cancelación de un script durante el tiempo de ejecución ...................... 13
Capítulo 3: Objetos de tipo de datos ......................................... 14
Booleano ...................................................................................................... 15
Operadores ............................................................................................. 15
Documento ................................................................................................... 16
Métodos .................................................................................................. 16
Operadores ............................................................................................. 20
Entero ........................................................................................................... 21
Métodos .................................................................................................. 21
Operadores ............................................................................................. 22
iii
Real .............................................................................................................. 24
Métodos .................................................................................................. 24
Operadores ............................................................................................ 25
String ............................................................................................................ 26
Métodos .................................................................................................. 26
Operadores ............................................................................................ 31
Asignación.................................................................................................... 34
Métodos .................................................................................................. 34
Capítulo 4: Objetos auxiliares..................................................... 37
Matriz booleana............................................................................................ 38
Métodos .................................................................................................. 38
Dataset ......................................................................................................... 39
Métodos .................................................................................................. 39
Matriz de enteros.......................................................................................... 41
Métodos .................................................................................................. 41
Opciones de impresión................................................................................. 42
Métodos .................................................................................................. 42
Opciones ................................................................................................ 43
Matriz de reales............................................................................................ 47
Métodos .................................................................................................. 47
Matriz de cadenas ........................................................................................ 48
Métodos .................................................................................................. 48
Textfile.......................................................................................................... 50
Métodos .................................................................................................. 50
Capítulo 5: Objetos del sistema.................................................. 55
Original ......................................................................................................... 56
Usertime ................................................................................................. 57
Confirm......................................................................................................... 60
Ejemplo de anulación ............................................................................. 63
Local............................................................................................................. 64
Capítulo 6: Objetos de acción..................................................... 65
BarcodeRead (Códigos de barras: leer)....................................................... 66
BarcodeWrite (Códigos de barras: escribir) ................................................. 72
ConvertImageFormat (Imágenes: cambiar formato) .................................... 77
ConvertToDocument (Imágenes: convertir a Postscript o imagen PDF) ..... 82
Contenido
iv
DatabaseNotes (Groupware: introducir)....................................................... 84
Acciones de Domino.Doc ............................................................................. 87
DominoDocCheckIn (EDMS: introducir) ................................................. 88
DominoDocRetrieve (EDMS: recuperar) ................................................ 93
Conexión a Domino.Doc ........................................................................ 98
Desplazamiento por una biblioteca de Domino.Doc .............................. 98
EmailExchange (E-mail)............................................................................. 100
EmailNotes (E-mail) ................................................................................... 103
EmailSMTP (E-mail)................................................................................... 106
Direcciones de e-mail ........................................................................... 108
Destinatarios y remitentes .................................................................... 108
Autenticación ........................................................................................ 109
FaxByPrinter (Fax) ..................................................................................... 110
FTPget (FTP: obtener) ............................................................................... 112
FTPput (FTP: colocar)................................................................................ 114
Acciones de GroupWise............................................................................. 116
GWMail (E-mail) ................................................................................... 117
GWDiscuss (E-mail) ............................................................................. 121
GWCheckIn (Groupware: introducir) .................................................... 124
ImageCombine (Imágenes: combinar en documento) ............................... 128
ImageCrop (Imágenes: recortar) ................................................................ 130
ImageInvert (Imágenes: invertir) ................................................................ 133
ImageMerge (Imágenes: plantilla).............................................................. 134
ImageRotate (Imágenes: girar) .................................................................. 139
ImageSeparate (Imágenes: separar en documento).................................. 141
ImageText (Imágenes: texto de plantilla) ................................................... 142
ImageToHTML (Imágenes: convertir a HTML)........................................... 146
Tipos de texto ....................................................................................... 149
ImageToPDF (Imágenes: convertir a PDF [se pueden realizar búsquedas])... 150
Tipos de texto ....................................................................................... 153
ImageToRTF (Imágenes: convertir a RTF) ................................................ 154
Tipos de texto ....................................................................................... 157
ImageToText (Imágenes: convertir a texto) ............................................... 158
Tipos de texto ....................................................................................... 162
LaunchExe (Iniciar otro programa)............................................................. 163
Comprobación de los valores devueltos .............................................. 166
MergeForm (Formularios: combinar en PDF) ............................................ 167
Contenido
v
Acciones de ODBC .................................................................................... 168
Introducción .......................................................................................... 168
ODBCWrite (Base de datos ODBC: escribir) ....................................... 169
ODBCRead (Base de datos ODBC: leer) ............................................. 174
PrintByDriver (Imprimir).............................................................................. 180
PrintForm (Imprimir) ................................................................................... 183
Tipo de impresora ................................................................................ 185
Uso de una cola de impresión de Windows ......................................... 185
PrintJob (Imprimir)...................................................................................... 188
Confirmación de impresión ................................................................... 195
PrintURL (Imprimir) .................................................................................... 196
SaveToFile (Guardar en archivo) ............................................................... 197
SharePoint.................................................................................................. 201
SharePointWrite (EDMS: introducir) ..................................................... 202
SharePointRead (EDMS: recuperar) .................................................... 206
Capítulo 7: Solicitudes .............................................................. 213
Solicitud de activación................................................................................ 214
Solicitud de mensaje .................................................................................. 215
Solicitud de número.................................................................................... 216
Solicitud de opciones (selección múltiple).................................................. 218
Solicitud de opciones (selección única) ..................................................... 221
Solicitud de contraseña .............................................................................. 224
Solicitud de texto ........................................................................................ 225
Apéndice A: Referencia de ODBC ............................................227
Requisitos y configuración de software...................................................... 227
Compatibilidad de documentos de base de datos ............................... 228
Inserción de valores en columnas de fecha ......................................... 229
Apéndice B: Referencia de códigos de barras ........................230
Codabar...................................................................................................... 230
Code 2 of 5................................................................................................. 231
Code 3 of 9................................................................................................. 232
Code 93...................................................................................................... 232
Code 128.................................................................................................... 233
EAN-8......................................................................................................... 233
Contenido
vi
EAN-13....................................................................................................... 234
ITF .............................................................................................................. 234
Patch .......................................................................................................... 235
PDF-417 ..................................................................................................... 235
UCC 128..................................................................................................... 236
UPC-A ........................................................................................................ 236
UPC-E ........................................................................................................ 237
Apéndice C: Referencia de metadatos .....................................238
Opciones de digitalización.......................................................................... 238
Opciones de copia...................................................................................... 241
Opciones de fax ......................................................................................... 244
Opciones de e-mail/FTP............................................................................. 245
Acceso a los datos de anulación en un script ............................................ 246
Contenido
vii
1
Introducción
Este manual proporciona una referencia técnica para LDDScript 3.2, el lenguaje de scripts del
conjunto de productos Lexmark™ Document Solutions.
La Referencia de scripts está organizada del siguiente modo:
Capítulo 2, "Conceptos básicos": descripción general rápida de las construcciones básicas
de LDDScript.
Capítulo 3, "Objetos de tipo de datos": información sobre los tipos de datos admitidos.
Capítulo 4, "Objetos auxiliares": información sobre los objetos que se utilizan para realizar
operaciones habituales.
Capítulo 5, "Objetos del sistema": información sobre los objetos que proporcionan los datos con
un trabajo enviado y ofrecen información al usuario.
Capítulo 6, "Objetos de acción": información sobre los objetos que realizan el procesamiento real
de los documentos a direccionar, almacenar en una base de datos, imprimir, etc.
Capítulo 7, "Solicitudes": información sobre la sintaxis y los objetos para solicitar datos a los
usuarios.
Apéndice A, "Referencia de ODBC": información sobre la interfaz con bases de datos desde
un script.
Apéndice B, "Referencia de códigos de barras": información sobre los códigos de barras que
admite LDDScript.
Apéndice C, “Referencia de metadatos”: información sobre las propiedades de metadatos
devueltas cuando un script anula la operación normal de copia/fax/email de una impresora
multifunción.
Introducción
1
Compatibilidad
LDDScript 3.2 sigue teniendo la misma sintaxis y construcciones que las presentadas en la
versión 2.0 de Lexmark Document Distributor. El conjunto de productos que utiliza el lenguaje
de scripts incluye:
•
•
•
Lexmark Document Distributor
Lexmark Document Producer
Lexmark Document Portal
El lenguaje de scripts funciona con todos los productos y permite automatizar el flujo de trabajo,
producir formularios basados en servidor e imprimir formularios en blanco o rellenados previamente.
Estos productos pueden funcionar independientemente o se pueden integrar para proporcionar una
solución de documentos completa.
Los scripts escritos para LDD 2.x se deben convertir o volver a escribir para que funcionen
en LDD 3.x. Los scripts escritos mediante Workflow Composer 3.1 funcionarán con LDD 3.2 sin
modificación; la única excepción es para scripts que hayan utilizado la acción ImageDeskew, que
se ha eliminado de LDD 3.2.
Novedades en la versión 3.2
Se han realizado los siguientes cambios en la versión 3.2:
•
•
•
•
•
•
La página de confirmación se ha mejorado para permitir la inclusión de todas las miniaturas
de todas las páginas digitalizadas; además, se pueden incluir en ella las preguntas y
respuestas introducidas por el usuario en la impresora multifunción.
Se ha agregado la posibilidad de anular la acción de la página de confirmación; esto permite
que la página de confirmación se pueda enviar por e-mail, guardar en un archivo, entre otras
acciones.
Se ha agregado autenticación a la acción EmailSMTP.
Se ha eliminado la acción ImageDeskew.
Ha mejorado significativamente el rendimiento de la acción MergeForm.
Se ha agregado compatibilidad de cola de impresión de Windows a la acción PrintForm.
Introducción
2
2
Conceptos básicos
Objetos
Los objetos son los elementos básicos de LDDScript. Un objeto contiene propiedades y métodos.
Una propiedad es uno de los objetos de tipo de datos básico como una cadena o un entero. Una
propiedad se define con varios valores que afectan al modo en que funciona el objeto. Un método es
una función a la que se llama para que realice operaciones en los datos. A un método se le pueden
pasar parámetros y puede devolver un valor. Los parámetros y los valores devueltos son objetos del
tipo de datos o auxiliares.
Se utiliza la notación de puntos para acceder a las propiedades y los métodos de un objeto.
Para definir el valor de una propiedad:
ObjectName.propertyName = value
Para llamar a un método:
ObjectName.MethodName()
ObjectName.MethodName(param1, param2)
returnValue = ObjectName.MethodName(param1)
LDDScript admite cuatro tipos de objetos:
•
•
•
•
Tipo de datos: los objetos más básicos; todas las propiedades y la mayoría de las variables
son de este tipo.
Auxiliar: proporciona una forma sencilla de realizar algunas operaciones habituales.
Sistema: no procesa documentos; se utiliza para recopilar entrada de datos y proporcionar
información al usuario.
Acción: procesa documentos, realiza el archivado, direccionamiento, distribución, etc.
Los restantes capítulos de este manual proporcionan una referencia de los objetos de cada tipo.
Conceptos básicos
3
Declaración de variables
Todas las variables se deben declarar para poder utilizarlas. Las variables no se pueden declarar
dentro de un bloque "with" ni dentro de bloques lógicos como if/then o bucles. Para declarar una
variable, especifique su tipo de objeto y nombre. Por ejemplo:
string text
int num
Hay varias reglas que se deben seguir al asignar nombres a las variables:
•
•
•
•
El nombre debe constar de letras, números y caracteres de subrayado.
El primer carácter del nombre debe ser una letra.
Debe ser único en el script; no se distingue entre mayúsculas y minúsculas en los nombres,
por lo que se considera que "Nombre", "NOMBRE" y "nombre" son la misma variable.
No puede ser una palabra reservada (aquélla que tiene un significado especial para el
compilador de scripts).
Control de flujo
Para controlar la ejecución de las sentencias del script, es necesario algún tipo de lógica de control de
flujo. Las sentencias de script se pueden ejecutar de tres formas: secuencial, selectiva o repetidamente.
Cuando no se utiliza lógica de control de flujo, las sentencias se ejecutan en el orden en el que están
en el script. Para la ejecución selectiva de determinadas sentencias de script, puede utilizar
sentencias if/then/else o switch/case. Para la ejecución repetitiva de sentencias de script, se pueden
utilizar las sentencias loop y repeat.
If/Then/Else
El tipo más habitual de control de flujo es la capacidad de ejecutar una sentencia si se cumple
una determinada condición. Esta capacidad se implementa en Document Server mediante la
construcción if/then/else. El formato básico es:
if (bool expression) then
statement1
statementn
endif
De statement1 a statementn sólo se ejecutan si la expresión booleana del paréntesis es
TRUE. En ocasiones también es necesario evaluar un conjunto de sentencias si una condición es
TRUE y otro si es FALSE. Esto se puede realizar con la construcción else:
if (bool expression) then
statementa
statementc
else
statementx
statementz
endif
Conceptos básicos
4
De statementa a statementc se ejecutan si la expresión booleana del paréntesis es TRUE;
de lo contrario, se ejecutan de statementx a statementz.
Switch/Case
A veces hay varias condiciones que se desean comprobar. Puede hacerlo con varias
sentencias If/Then. La sentencia Switch/Case proporciona una forma más sencilla de realizar
varias comparaciones:
Sentencia switch con entero
Sentencia switch con cadena
switch (intvar)
case intval1
statementa
statementb
case intval2
statementc
statementd
default
statemente
statementf
endswitch
switch (stringvar)
case "stringval1"
statementa
statementb
case "stringval2"
statementc
statementd
default
statemente
statementf
endswitch
Puede utilizar valores enteros o de cadena con la sentencia Switch/Case. Según el valor de la
variable, se ejecuta el bloque case correspondiente a dicho valor. Cada bloque case puede contener
varias sentencias, pero sólo se ejecuta un bloque case.
Si el valor de la variable switch no coincide con ninguno de los bloques case, se ejecuta el bloque
default. No se requiere el bloque default. Sin embargo, si se utiliza un bloque default, debe ser el
último.
Ejemplo de switch
Las impresoras multifunción tienen funciones de seguimiento de trabajos. Cuando se activa esta
característica, los usuarios deben introducir un número de cuenta antes de acceder a un perfil. En
este ejemplo, los usuarios introducen un número de departamento al utilizar perfiles. Este script de
ejemplo utiliza una sentencia Switch/Case para comprobar el número de departamento.
string CustomSubject
// Utilizar el número de cuenta como entero
int DeptNumber = original.useracct.AsInt()
switch (DeptNumber)
case 35
CustomSubject = "Documento de Recursos Humanos"
case 41
CustomSubject = "Documento del Departamento legal"
case 15
CustomSubject = "Documento del Departamento de envíos"
predeterminado
CustomSubject = "Documento de la empresa"
endswitch
Conceptos básicos
5
with EmailSMTP
.Server="servidorcorreo.com"
.To="barbarab@empresax.com"
.From="LDDTrain@lexmark.com"
.Subject=AsuntoCliente
.Message="Léelo."
.CharacterSet=LDD_SMTPCHARSET_US
.Attachments=original.document
.Go()
endwith
Sentencias repetitivas
Cada sentencia de un script se ejecuta sólo una vez. Las sentencias repeat y loop permiten ejecutar
el mismo bloque de sentencias varias veces.
Loop
Cuando desee repetir un conjunto de sentencias un número conocido de veces, utilice la sentencia
loop.
Sintaxis:
loop (intcounter from istart to ifinish)
statement1
statementn
endloop
donde:
•
•
•
intcounter es una variable entera declarada anteriormente
istart es un valor entero que se asignará a intcounter cuando se inicie el bucle
ifinish es un valor entero que es el máximo para intcounter
Utilizando una variable entera como contador, el bucle se repite tantas veces como se especifica en
la información de istart/ifinish. Puede incluir tantas sentencias como desee en un bloque de
bucle. El bloque de bucle termina con la sentencia endloop.
El bucle comienza asignando el valor indicado por istart a la variable de contador. Con cada
ejecución del bucle, el valor del contador se incrementa en 1. Continúa hasta que el contador es
mayor que el valor de ifinish.
Por lo tanto, un bucle de 1 a 10 se repite hasta que el contador tiene el valor 11. El valor de istart
debe ser menor que el valor de ifinish.
La variable entera utilizada para el contador se debe declarar antes de utilizarla en la sentencia loop.
Conceptos básicos
6
Ejemplo:
Enviar por e-mail el documento digitalizado originalmente a diez representantes del servicio de
atención al cliente. En este script, se especifican las propiedades comunes de EmailSMTP antes de
enviar los mensajes de e-mail dentro de la sentencia loop.
string EmailAdd
int LoopCount
// Configurar las propiedades comunes para los mensajes de e-mail.
with EmailSMTP
.Subject="Queja del cliente"
.Server="servidor.correo.com"
.From="servicio_cliente@empresax.com"
.Message="Revisa esta queja."
.Attachments=original.document
.CharacterSet=LDD_SMTPCHARSET_US
endwith
loop (LoopCount from 1 to 10)
EmailSMTP.To="RepCli" + LoopCount.AsString() + "@empresax.com"
EmailSMTP.Go()
endloop
Repeat
La sentencia repeat permite ejecutar un bloque de sentencias continuamente hasta que una
expresión sea verdadera.
repeat until (bool expression)
statement1
statementn
endrepeat
La sentencia repeat repite el bloque de sentencias hasta que la expresión booleana es TRUE.
Puede haber tantas sentencias como desee en un bloque de bucle. La sentencia endrepeat
termina el bloque de bucle. Si el valor inicial de la expresión booleana es true, el bucle no se ejecuta.
Ejemplo:
En este script se utiliza OCR (reconocimiento óptico de caracteres) para comprobar si los
documentos digitalizados por los usuarios son confidenciales. Si el documento es confidencial,
no se envía por e-mail. La imagen digitalizada se guarda en un archivo y se envía un mensaje de
advertencia al usuario que ha digitalizado el documento confidencial.
with ImageToText
.input=original.document
.TextType=LDD_TEXTTYPE_NORMAL
.Language=LDD_LANG_ENGLISH
.AllPages=TRUE
.Go()
endwith
textfile tf
string OneLine, Remitente
Conceptos básicos
7
// Abrir el resultado de una acción OCR
tf.Open(ImageToText.output)
bool bConfDoc = FALSE
int iCount, iEnd
iCount =1
iEnd = tf.GetNumberLines()
Submitter = original.username+ "@lexmark.com"
// Buscar en cada línea el término Confidencial
repeat (until (bConfDoc OR (iCount>=iEnd)))
OneLine = tf.ReadLine()
if (OneLine.Contains("Confidencial"))
then
bConfDoc = TRUE
endif
iCount.Add(1)
endrepeat
// Si es un documento confidencial, guardarlo y enviar un mensaje de advertencia
if (bConfDoc)
then
with SaveToFile
.input=original.document
.Path="c:\ebc.txt"
.AppendTimestamp=TRUE
.Overwrite=FALSE
.Go()
endwith
with EmailSMTP
.Server="servidor.correo.com"
.To= Remitente
.From="comprobcorreo@abcxyz.com"
.Subject="E-mail no válido rechazado"
.Message="No se puede enviar por e-mail un documento confidencial"
.CharacterSet=LDD_SMTPCHARSET_US
.Go()
endwith
else
with EmailSMTP
.Server="servidor.correo.com"
.To="Receptor@abcxyz.com"
.From=Remitente
.Subject="Documento digitalizado"
.Message="Aquí tienes el documento solicitado."
.CharacterSet=LDD_SMTPCHARSET_US
.Attachments=original.document
.Go()
endwith
endif
Conceptos básicos
8
Operadores
Matemáticos
Estos operadores se utilizan para definir o cambiar el valor de una variable o propiedad.
Operador
Símbolo Descripción
Suma
+
Para objetos enteros y reales, suma los números a
ambos lados de "+" y devuelve el nuevo valor. Para
objetos de cadena, tiene un efecto similar al método
concatenate. Añade la cadena a la derecha de la
cadena situada a la izquierda y devuelve la nueva
cadena. Para objetos de documento, añade el
documento a la derecha del documento situado a la
izquierda y devuelve el nuevo documento. En todos
los casos, las variables situadas a ambos lados no
se modifican.
Resta
-
Para objetos enteros y reales, resta el número de la
derecha al de la izquierda y devuelve el nuevo valor.
Las variables situadas a ambos lados no se modifican.
No se aplica a ningún otro tipo de objeto.
Multiplicación
*
Para objetos enteros y reales, multiplica los números
a ambos lados de "*" y devuelve el nuevo valor. Las
variables situadas a ambos lados no se modifican.
No se aplica a ningún otro tipo de objeto.
División
/
Para objetos enteros y reales, divide el número de la
izquierda entre el de la derecha y devuelve el nuevo
valor. Las variables situadas a ambos lados no se
modifican. No se aplica a ningún otro tipo de objeto.
Resto
%
Para objetos enteros, divide el número de la izquierda
entre el de la derecha y devuelve el resto. Las
variables situadas a ambos lados no se modifican.
No se aplica a ningún otro tipo de objeto. Por ejemplo,
5%2 devuelve 1 debido a que 5 dividido entre 2 es 2
con un resto de 1.
Conceptos básicos
9
Comparación
Estos operadores se utilizan para comparar los valores de variables o propiedades del mismo tipo.
El resultado de la comparación es un valor booleano (TRUE o FALSE). Se puede utilizar cualquiera
de los símbolos enumerados para un operador.
Operador
Símbolos
Descripción
Menor que
<, LT
Para enteros y reales, devuelve TRUE si
el valor de la izquierda es menor que el de
la derecha. Para cadenas, devuelve TRUE
si el valor de la izquierda es alfabéticamente
anterior al de la derecha (incluyendo
mayúsculas y minúsculas). De lo contrario,
devuelve FALSE.
Mayor que
>, GT
Para enteros y reales, devuelve TRUE si
el valor de la izquierda es mayor que el de la
derecha. Para cadenas, devuelve TRUE si
el valor de la izquierda es alfabéticamente
posterior al de la derecha (incluyendo
mayúsculas y minúsculas). De lo contrario,
devuelve FALSE.
Menor o igual que
<=, LE
Para enteros y reales, devuelve TRUE si el
valor de la izquierda es menor o igual que el
de la derecha. Para cadenas, devuelve TRUE
si el valor de la izquierda es alfabéticamente
anterior o igual al de la derecha (incluyendo
mayúsculas y minúsculas). De lo contrario,
devuelve FALSE.
Mayor o igual que
>=, GE
Para enteros y reales, devuelve TRUE si el
valor de la izquierda es mayor o igual que el
de la derecha. Para cadenas, devuelve TRUE
si el valor de la izquierda es alfabéticamente
posterior o igual al de la derecha (incluyendo
mayúsculas y minúsculas). De lo contrario,
devuelve FALSE.
Igual a
==, EQ
Para enteros y reales, devuelve TRUE si
el valor de la izquierda es igual que el de
la derecha. Para cadenas, devuelve TRUE
si el valor de la izquierda es exactamente
el mismo (incluyendo mayúsculas y
minúsculas) que el de la derecha. De lo
contrario, devuelve FALSE.
(doble signo igual)
No igual a
!=, <>, NE
Para enteros y reales, devuelve TRUE si
el valor de la izquierda no es igual que el de
la derecha. Para cadenas, devuelve TRUE
si el valor de la izquierda no es exactamente
el mismo (incluyendo mayúsculas y
minúsculas) que el de la derecha. De lo
contrario, devuelve FALSE.
Conceptos básicos
10
Booleanos
Estos operadores se utilizan para crear expresiones booleanas complejas. El valor a cada lado
del operador debe ser booleano. El resultado del operador booleano es un valor booleano (TRUE
o FALSE). Se puede utilizar cualquiera de los símbolos enumerados para un operador.
Operador
Símbolos
Descripción
Y
&, &&, AND
Realiza una operación AND entre dos
valores booleanos para obtener el resultado
booleano final.
O
|, ||, OR
Realiza una operación OR entre dos valores
booleanos para obtener el resultado
booleano final.
No
!, NOT
Realiza una operación NOT entre dos valores
booleanos para obtener el resultado
booleano final.
La siguiente tabla muestra los resultados de los métodos AND y OR utilizando:
bool1 AND bool2
bool1 OR bool2
bool 1
bool2
AND
OR
FALSE
FALSE
FALSE
FALSE
FALSE
TRUE
FALSE
TRUE
TRUE
FALSE
FALSE
TRUE
TRUE
TRUE
TRUE
TRUE
La siguiente tabla muestra los resultados del método NOT utilizando:
NOT bool1
bool 1
NOT
TRUE
FALSE
FALSE
TRUE
Conceptos básicos
11
Otras características
Abreviatura de objetos con "with"
Si tiene un código de sección que funciona con el mismo objeto, puede resultar molesto escribir
continuamente el mismo nombre de objeto. Para evitarlo, puede utilizar la sentencia with. El formato
general es:
with nombreobjeto
.property = valor
.property = valor
.method()
endwith
El nombre del objeto que se utilizará se indica en la sentencia with y, a continuación, se puede hacer
referencia a cualquier propiedad o método del objeto utilizando el "punto" seguido del nombre de la
propiedad o el método. Se utiliza habitualmente con los objetos de acción.
Depuración de un script
Cuando se ejecuta un script, los objetos de acción pueden escribir mensajes de error y advertencia
en el registro. También puede escribir mensajes propios en el registro para facilitar la depuración
del script.
Por ejemplo, desea conocer el valor de una variable o el valor devuelto de un método. Para escribir
el mensaje en el registro, utilice la sentencia "debug".
debug (msg)
msg puede ser una variable de cadena, una cadena entre comillas o una expresión numérica.
A continuación se ofrecen algunos ejemplos:
int index= 3
string ErrorMsg = "No se puede imprimir."
debug (index)
debug (ErrorMsg)
debug ("Recibido trabajo de " + original.username)
Cada una de estas sentencias escriben un mensaje en el registro del servidor.
Conceptos básicos
12
Concatenación de comentarios y líneas de código en un script
Para concatenar comentarios en un script, debe utilizar la barra inclinada doble (“//”) si las líneas se
ajustan. Por ejemplo:
//Este script enviará por fax un original digitalizado y lo enviará a una base de datos proporcionada
//por el usuario, si la base de datos no está admitida por el software.....
Para concatenar líneas de código, se debe utilizar un carácter de subrayado (“_”). Por ejemplo:
str email="Juan García"
doc ocr
with EmailSMTP
.Server=local.emailserver
.To=email
.From=email
.Subject="Documento digitalizado"
.Message="Se incluye el documento digitalizado en el formato"_
"solicitado."
.CharacterSet=LDD_SMTPCHARSET_US
.Attachments=ocr
.Go()
endwith
Cancelación de un script durante el tiempo de ejecución
Si detecta una condición de error durante la ejecución del script, resulta útil disponer de medios para
detener el procesamiento del script. Para ello, utilice la función exit:
void exit(string msg)
La función exit detiene el procesamiento del script. Permite pasar una cadena que aparecerá en el
registro del servidor así como en la página/cuadro de diálogo de confirmación.
Conceptos básicos
13
3
Objetos de tipo de datos
Todos los datos que utiliza Workflow Composer se pueden agrupar en seis grupos distintos de tipos
de datos:
•
•
•
•
•
•
Booleano
Documento
Entero
Asignación
Real
String
Cada propiedad de objeto es uno de los objetos de tipo de datos. Además, la mayoría de las
variables son uno de estos tipos. A continuación se ofrece una explicación de cada uno de estos
objetos.
Objetos de tipo de datos
14
Booleano
El objeto booleano se utiliza para valores que son verdaderos o falsos desde el punto de vista lógico.
Los únicos valores válidos para esta variable son las palabras reservadas: TRUE y FALSE.
El objeto no tiene propiedades. Se admiten los siguientes operadores:
Operadores
Símbolo
Descripción
==, EQ
Igual
<>
No igual
&, AND
Y
|, OR
O
!, NOT
No
=
Asignación
Objetos de tipo de datos
15
Documento
El objeto de documento se utiliza para contener una colección de archivos de imagen, texto y otros
formatos. Todos los archivos de un objeto de documento no tienen que ser del mismo tipo; se puede
utilizar para contener diferentes archivos de distintos tipos.
Una propiedad o variable es de este tipo cuando se declara como doc. El objeto de documento no
tiene propiedades.
Métodos
Sintaxis
Descripción
bool AddDocument(doc doc1)
Agrega un documento existente al final de este
documento.
Parámetros:
doc1: el documento que se agregará.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
bool AddFile(string path [, string type])
Agrega un archivo existente al final de este documento.
Se producirá un error en este método si el archivo no
existe o no se puede leer.
Parámetros:
path: ruta de acceso completa del archivo en el servidor
a agregar.
type: si no se indica, el tipo de archivo se definirá como
la extensión del archivo a agregar; de lo contrario, se
utilizará el valor suministrado.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
void AddTempFile(string ext)
Agrega un archivo temporal al documento. El archivo
se eliminará cuando termine el script.
Parámetros:
ext: la extensión del archivo temporal
Devuelve:
Nada
void Clear()
Elimina todos los archivos del documento.
Parámetros:
Ninguno
Devuelve:
Nada
Objetos de tipo de datos
16
Sintaxis
Descripción
doc Copy()
Copia todos los archivos de este documento en uno
nuevo; realmente efectúa una copia de los archivos, por
lo que existen dos copias de los mismos. De este modo,
se pueden efectuar cambios en un conjunto de archivos
sin afectar al otro.
Parámetros:
Ninguno
Devuelve:
un documento que contiene una copia de todos los
archivos en la variable de documento que se está
copiando.
doc CopyRange(int start, int end)
Copia los archivos especificados de este documento en
uno nuevo; realmente efectúa una copia de los archivos,
por lo que existen dos copias de los mismos. De este
modo, se pueden efectuar cambios en un conjunto de
archivos sin afectar al otro.
Parámetros:
start: índice del primer archivo del documento que se
copiará; los índices de archivo empiezan en 1
end: índice del último archivo del documento que se
copiará
Devuelve:
Un documento que contiene una copia de los archivos del
rango especificado.
int GetDocumentSize()
Devuelve el tamaño total en bytes de todos los archivos
de este documento. Se devuelve un tamaño cero (0) si
no hay archivos en el documento.
Parámetros:
Ninguno
Devuelve:
Un entero con el número total de bytes de este
documento.
string GetDocumentType()
Devuelve el tipo (formato o extensión de archivo) del
documento. Si todos los archivos del documento son
del mismo tipo, el valor es el tipo de documento; de lo
contrario, el valor es una cadena vacía.
Parámetros:
Ninguno
Devuelve:
Una cadena que contiene el tipo de documento (formato
o extensión de archivo) del documento.
Objetos de tipo de datos
17
Sintaxis
Descripción
doc GetFile(int filenum)
Devuelve una referencia al archivo especificado; el
documento devuelto no es una copia, por lo que los
cambios efectuados en este archivo afectan al original.
Se devuelve un documento vacío si filenum no es
válido.
Parámetros:
filenum: índice del archivo a obtener; los índices de
archivo empiezan en 1
Devuelve:
Un documento que contiene una referencia al archivo
especificado.
string GetFileLabel(int filenum)
Devuelve la etiqueta del archivo especificado. La
etiqueta se utiliza como nombre de archivo (menos la
extensión) de los anexos en e-mails o bases de datos.
Se devuelve una cadena vacía si filenum no es válido.
Parámetros:
filenum: índice del archivo cuya etiqueta se desea
obtener; los índices de archivo empiezan en 1
Devuelve:
Una cadena que contiene la etiqueta del archivo
especificado.
doc GetFileRange(int start, int end)
Devuelve una referencia a los archivos especificados;
el documento devuelto no es una copia, por lo que los
cambios efectuados en estos archivos afectan a los
originales.
Parámetros:
start: índice del primer archivo a obtener; los índices
de archivo empiezan en 1
end: índice del último archivo a obtener
Devuelve:
Un documento que contiene una referencia a los archivos
especificados.
int GetFileSize(int filenum)
Devuelve el tamaño en bytes del archivo especificado.
Se devuelve un valor cero (0) si filenum no es válido.
Parámetros:
filenum: índice del archivo cuyo tamaño se desea
obtener; los índices de archivo empiezan en 1
Devuelve:
Un entero que contiene el tamaño en bytes del archivo
especificado.
Objetos de tipo de datos
18
Sintaxis
Descripción
string GetFileType(int filenum)
Devuelve el tipo (formato o extensión de archivo) del
archivo especificado. Se devuelve una cadena vacía
si filenum no es válido.
Parámetros:
filenum: índice del archivo cuyo tipo se desea obtener;
los índices de archivo empiezan en 1
Devuelve:
Una cadena que contiene el valor de tipo de archivo del
archivo especificado.
int GetNumberFiles()
Devuelve el número de archivos independientes de este
documento. No devuelve el número de páginas.
Parámetros:
Ninguno
Devuelve:
Un entero con el número de archivos de este documento.
bool SetFileLabel(int filenum, string label) Define la etiqueta del archivo especificado; esta
etiqueta se utiliza como nombre de archivo (menos la
extensión) para asignar nombres a los anexos en e-mail
o bases de datos. Se produce un error en este método
si filenum no es válido.
Parámetros:
filenum: índice de archivo; los índices de archivo
empiezan en 1.
label: etiqueta que se asignará al archivo especificado;
debido a que se utiliza como nombre de archivo, la etiqueta
debe seguir las reglas de la nomenclatura de archivos.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
void SetFileLabelAll(string label)
Define las etiquetas de todos los archivos de este
documento; esta etiqueta se utiliza como nombre de
archivo (menos la extensión) para asignar nombres
a los anexos en e-mail o bases de datos.
Parámetros:
label: etiqueta que se asignará a todos los archivos; debido
a que se utiliza como nombre de archivo, la etiqueta debe
seguir las reglas de la nomenclatura de archivos.
Devuelve:
Nada
Nota: para las variables de tipo doc, la asignación de la variable es sólo una referencia.
Es decir, ambas variables señalan al mismo conjunto físico de archivos que
componen el documento. Por lo tanto, cuando se realiza un cambio en un archivo,
dicho archivo cambia en ambos documentos. Para realizar copias de trabajo
distintas de los archivos, utilice los métodos Copy o CopyRange del objeto doc.
Objetos de tipo de datos
19
Operadores
Símbolo
Descripción
+
Agregar (igual que llamar a AddDocument)
[]
Índice (igual que llamar a GetFile utilizando dicho archivo)
=
Asignación (igual que llamar a GetFileRange utilizando
todos los archivos)
Objetos de tipo de datos
20
Entero
El objeto entero se utiliza para valores que son números sin puntos decimales.
Una propiedad o variable es de este tipo cuando se declara como int. El objeto no tiene
propiedades.
Métodos
Sintaxis
Descripción
void Add(int num)
Suma num al valor actual. El valor de este objeto
se cambia.
Parámetros:
num: entero que se sumará al valor actual.
Devuelve:
Nada
real AsReal()
Convierte y devuelve el valor actual de este objeto
como un objeto real. El valor de este objeto no se
cambia.
Parámetros:
Ninguno
Devuelve:
Un real con el valor de este objeto.
string AsString()
Devuelve el valor actual de este objeto como una
cadena. Este método se utiliza normalmente para
que el valor del entero se pueda usar como parte de
una cadena.
Parámetros:
Ninguno
Devuelve:
Una cadena con el valor de este objeto.
void Divide(int num)
Divide el valor actual entre num. El valor de este
objeto se cambia.
Parámetros:
num: entero entre el que se dividirá.
Devuelve:
Nada
Objetos de tipo de datos
21
Sintaxis
Descripción
void Mod(int num)
Divide el valor actual entre num y define el valor de
este objeto como el resto.
Parámetros:
num: entero entre el que se dividirá.
Devuelve:
Nada
void Multiply(int num)
Multiplica el valor actual por num. El valor de este
objeto se cambia.
Parámetros:
num: entero por el que se multiplicará.
Devuelve:
Nada
Operadores
Símbolo
Descripción
<, LT
Menor que
>, GT
Mayor que
<=, LE
Menor o igual que
>=, GE
Mayor o igual que
==, EQ
Igual
<>, NE, !=
No igual a
+
Sumar
-
Restar
*
Multiplicar
/
Dividir
%
Resto
=
Asignación
Objetos de tipo de datos
22
Ejemplos
Media carta
Valor de X
Comentario
int x
0
Declara la variable
x = 5
5
Asigna el valor 5 a x
x.Mod(2)
1
5%2 es 2 devuelve 1
x.Add(9)
10
x.Subtract(2)
8
x.Multiply(2)
16
x.Divide(8)
2
x.AsReal()
2
Devuelve 2.0
x.AsString()
2
Devuelve "2"
Nota: también se pueden utilizar los operadores matemáticos estándar (+, -, *, /).
Objetos de tipo de datos
23
Real
El objeto real se utiliza para valores que son números con puntos decimales.
Una propiedad o variable es de este tipo cuando se declara como: real. El objeto no tiene
propiedades.
Métodos
Sintaxis
Descripción
void Add(real num)
Suma num al valor actual. El valor de este objeto
se cambia.
Parámetros:
num: real que se sumará al valor actual.
Devuelve:
Nada
int AsInt ()
Convierte y devuelve el valor actual de este
objeto como un objeto entero. El valor no se
redondea; los números que van después del
punto decimal se truncan. El valor de este objeto
no se cambia.
Parámetros:
Ninguno
Devuelve:
Un entero con el valor de este objeto.
string AsString()
Devuelve el valor actual de este objeto como
una cadena. Este método se utiliza normalmente
para que el valor del real se pueda usar como
parte de una cadena.
Parámetros:
Ninguno
Devuelve:
Una cadena con el valor de este objeto.
Objetos de tipo de datos
24
Sintaxis
Descripción
void Divide(real num)
Divide el valor actual entre num. El valor de este
objeto se cambia.
Parámetros:
num: real entre el que se dividirá.
Devuelve:
Nada
void Multiply(real num)
Multiplica el valor actual por num. El valor de
este objeto se cambia.
Parámetros:
num: real por el que se multiplicará.
Devuelve:
Nada
Operadores
Símbolo
Descripción
<, LT
Menor que
>, GT
Mayor que
<=, LE
Menor o igual que
>=, GE
Mayor o igual que
==, EQ
Igual
<>, NE, !=
No igual a
+
Sumar
-
Restar
*
Multiplicar
/
Dividir
=
Asignación
Objetos de tipo de datos
25
String
El objeto de cadena se utiliza para valores que son texto. Una propiedad o variable es de este tipo
cuando se declara como: string. El objeto no tiene propiedades.
Métodos
Sintaxis
Descripción
string AsAlphaNumeric()
Convierte y devuelve el valor actual de la cadena
como una cadena que sólo contiene los
caracteres alfabéticos y numéricos del valor
actual; todos los demás caracteres se eliminan.
El valor de esta cadena no se cambia.
Parámetros:
Ninguno
Devuelve:
Una cadena que sólo contiene los caracteres
alfabéticos y numéricos de la cadena actual.
doc AsDoc()
Devuelve el valor actual de esta cadena como un
documento. El documento tiene un archivo que
contiene el valor actual de esta cadena como
su texto.
Parámetros:
Ninguno
Devuelve:
Un documento con el valor actual de esta cadena
como su texto.
int AsInt()
Devuelve el valor actual de la cadena como un
entero. El valor actual se lee hasta el primer
carácter que no sea numérico. El valor devuelto
es cero (0) si la cadena está vacía o el primer
carácter no es numérico. El valor de esta cadena
no se cambia.
Parámetros:
Ninguno
Devuelve:
Un entero con el valor actual de la cadena como
su entero.
Objetos de tipo de datos
26
Sintaxis
Descripción
string AsLower()
Convierte y devuelve el valor actual de esta
cadena con todas las letras en minúsculas.
Los caracteres que no sean alfabéticos no se
cambian. El valor de esta cadena no se cambia.
Parámetros:
Ninguno
Devuelve:
Una cadena con el valor actual convertido a letras
minúsculas.
real AsReal()
Devuelve el valor actual de la cadena como
un real. El valor actual se lee hasta el primer
carácter que no sea numérico. Los caracteres
numéricos para los números reales incluyen el
punto decimal. El valor devuelto es cero (0.0) si
la cadena está vacía o el primer carácter no es
numérico. El valor de esta cadena no se cambia.
Parámetros:
Ninguno
Devuelve:
Un real con el valor actual de la cadena como
un real.
string AsUpper()
Convierte y devuelve el valor actual de esta
cadena con todas las letras en mayúsculas.
Los caracteres que no sean alfabéticos no se
cambian. El valor de esta cadena no se cambia.
Parámetros:
Ninguno
Devuelve:
Una cadena con el valor actual convertido en
letras mayúsculas.
bool Compare(string string1)
Compara el valor actual de esta cadena con la
proporcionada. En esta comparación se
distinguen mayúsculas y minúsculas.
Parámetros:
string1: cadena con la que se compara el valor
actual de esta cadena.
Devuelve:
Un valor bool TRUE si las cadenas son las
mismas, incluyendo los caracteres en mayúsculas
y minúsculas; de lo contrario, FALSE.
Objetos de tipo de datos
27
Sintaxis
Descripción
bool CompareNoCase(string string1)
Compara el valor actual de esta cadena con
la proporcionada. En esta comparación no se
distinguen mayúsculas y minúsculas.
Parámetros:
string1: cadena con la que se compara el valor
actual de esta cadena.
Devuelve:
Un valor bool TRUE si las cadenas son las
mismas, sin tener en cuenta los caracteres en
mayúsculas y minúsculas; de lo contrario, FALSE.
void Concatenate(string string1)
Añade string1 al valor actual de esta cadena.
Parámetros:
string1: cadena que se añadirá
Devuelve:
Nada
int Find(string substring, int start)
Busca en el valor actual de esta cadena la
primera aparición del parámetro substring
especificado.
Parámetros:
substring: la subcadena que se buscará.
start: el índice del carácter en esta cadena donde
se empezará la búsqueda; el valor 1 inicia la
búsqueda al principio.
Devuelve:
Un entero que indica la posición de inicio de la
subcadena en esta cadena; 0 si no se encuentra
la cadena.
string Left(int count)
Devuelve el primer recuento de caracteres de
esta cadena. Si el parámetro count es mayor que
la longitud de la cadena, se devuelve toda la
cadena.
Parámetros:
count: el número de caracteres que se obtendrán
Devuelve:
Una cadena que contiene el primer recuento de
caracteres del valor actual.
int Length()
Devuelve el número de caracteres de esta
cadena.
Parámetros:
Ninguno
Devuelve:
Un entero que contiene el número de caracteres
de la cadena.
Objetos de tipo de datos
28
Sintaxis
Descripción
string Mid(int start, int count)
Devuelve una subcadena de la cadena actual
con la longitud especificada en el parámetro
count a partir del carácter indicado en el
parámetro start. Los índices de cadena
empiezan en 1.
Parámetros:
start: el índice del primer carácter que se incluirá
en la subcadena
count: el número de caracteres que se incluirán
en la subcadena; un valor cero (0) indica el resto
de los caracteres de la cadena
Devuelve:
Una cadena que es una subcadena del valor
actual y contiene los caracteres del rango
especificado.
int Replace(string old, string new, int index,
bool matchcase, bool wholeword)
Busca el valor actual de la cadena empezando
en el índice especificado y sustituye la primera
aparición de la cadena anterior por la nueva. La
búsqueda se puede definir para que coincidan
mayúsculas y minúsculas o para encontrar sólo
palabras enteras.
Parámetros:
old: la cadena que se buscará.
new: la cadena utilizada para sustituir la cadena
anterior.
index: entrada en el campo de índice.
matchcase: indica si en la búsqueda se distinguen
mayúsculas y minúsculas.
wholeword: indica si en la búsqueda sólo deben
coincidir palabras enteras, no partes de palabras.
Devuelve:
Un entero que indica el índice del primer carácter
en la cadena que coincide con la cadena de
búsqueda solicitada. Se devuelve un valor 0 si no
hay ninguna coincidencia.
Objetos de tipo de datos
29
Sintaxis
Descripción
int ReplaceAll(string old, string new, bool
matchcase, bool wholeword)
Busca el valor actual de la cadena y sustituye
todas las apariciones de la cadena anterior por
la nueva. La búsqueda se puede definir para que
coincidan mayúsculas y minúsculas o para
encontrar sólo palabras enteras.
Parámetros:
old: la cadena que se buscará
new: la cadena utilizada para sustituir la cadena
anterior
matchcase: indica si en la búsqueda se distinguen
mayúsculas y minúsculas
wholeword: indica si en la búsqueda sólo deben
coincidir palabras enteras, no partes de palabras
Devuelve:
Un entero que indica el número de sustituciones
que se han efectuado. Se devuelve un valor 0 si
no hay ninguna coincidencia.
string Right(int count)
Devuelve el último recuento de caracteres de la
cadena. Si el parámetro count es mayor que la
longitud de la cadena, se devuelve toda la
cadena.
Parámetros:
count: el número de caracteres que se obtendrán
Devuelve:
Una cadena que contiene el último recuento de
caracteres del valor actual.
stringarray Separate(string separator)
Se busca la cadena indicada en el parámetro
separator en el valor actual de la cadena; cada
vez que se encuentra, se forma una nueva
cadena menos el valor del separador. Cuando se
llega al final de la cadena, la parte restante de la
cadena se agrega como último elemento de la
matriz. Si no se encuentra el separador, se
devuelve toda la cadena como el primer
elemento de la matriz.
Parámetros:
separator: la cadena que se utiliza como el valor
de separación
Devuelve:
Una matriz de cadenas en la que cada elemento
es una cadena menos el separador.
Objetos de tipo de datos
30
Sintaxis
Descripción
void TrimBoth()
Elimina todos los espacios en blanco del
principio y el final de la cadena. Un espacio
en blanco es cualquier carácter de nueva línea,
espacio o tabulación. El valor de la cadena
actual se cambia.
Parámetros:
Ninguno
Devuelve:
Nada
void TrimLeft()
Elimina todos los espacios en blanco del principio
de la cadena. Un espacio en blanco es cualquier
carácter de nueva línea, espacio o tabulación. El
valor de la cadena actual se cambia.
Parámetros:
Ninguno
Devuelve:
Nada
void TrimRight()
Elimina todos los espacios en blanco del final
de la cadena. Un espacio en blanco es cualquier
carácter de nueva línea, espacio o tabulación.
El valor de la cadena actual se cambia.
Parámetros:
Ninguno
Devuelve:
Nada
Operadores
Símbolo
Descripción
<, LT
Menor que (compara distinguiendo mayúsculas y minúsculas)
>, GT
Mayor que (compara distinguiendo mayúsculas y minúsculas)
==, EQ
Igual (compara distinguiendo mayúsculas y minúsculas)
<>, NE
No igual (compara distinguiendo mayúsculas y minúsculas)
+
Concatenar
Objetos de tipo de datos
31
Ejemplos:
Para la cadena, str, con el valor "ABC123abc:789":
str.AsAlphaNumeric()
devuelve
"ABC123abc789"
str.AsInt()
devuelve
0
str.AsLower()
devuelve
"abc123abc:789"
str.AsReal()
devuelve
0.0
str.AsUpper()
devuelve
"ABC123ABC:789"
str.Contains("123")
devuelve
TRUE
str.Find("123", 1)
devuelve
4
str.Length()
devuelve
13
str.Left(5)
devuelve
"ABC12"
str.Mid(6, 4)
devuelve
"3abc"
str.Right(4)
devuelve
":789"
Para la cadena, str, con el valor "12.45":
str.AsReal()
devuelve
12.45
str.AsInt()
devuelve
12
Para la cadena, str, con el valor "Esto es una prueba de esta cadena.":
str.Replace("es", "ha sido",
1, TRUE, FALSE)
devuelve
3
y cambia el valor a:
"Esto ha sido una prueba
de esta cadena."
str.Replace("es", "ha sido",
1, FALSE, TRUE)
devuelve
6
y cambia el valor a:
"Esto ha sido una prueba
de esta cadena."
Objetos de tipo de datos
32
str.ReplaceAll("esta", "esa",
FALSE,TRUE)
devuelve
2
y cambia el valor a:
"Esto ha sido una prueba de esa
cadena."
str.ReplaceAll("esta", "esa",
TRUE, FALSE)
devuelve
1
y cambia el valor a:
"Esto es una prueba de esa cadena."
Caracteres de escape
Hay algunos caracteres necesarios en las cadenas que no se pueden representar mediante los
caracteres normales. Para incluir estos caracteres, los objetos de cadena admiten los siguientes
caracteres de escape.
Símbolo
Descripción
^n
Nueva línea de Windows
^l
Avance de línea de Unix
^r
Retorno de carro de Unix
^t
Tabulación
^^
Signo de intercalación
^xdd
Hexadecimal
^"
Poner comillas en una cadena
Para utilizarlos, incluya el carácter de escape entre las comillas. Por ejemplo:
string str = "Línea 1^nLínea2^tTab hasta siguiente columna"
string msg = "Ésta es la ^"primera^" cadena entrecomillada."
Objetos de tipo de datos
33
Asignación
El objeto de asignación se utiliza para contener una colección de pares de clave/valor. Proporciona
un modo de estructurar datos de una manera definida por el usuario. Los datos se pueden subdividir
en categorías y éstas pueden tener sus propios pares de clave/valor. Todas las claves y valores de
la asignación son cadenas.
La presentación de los datos es la siguiente:
•
key = valor
•
category.key = valor
•
category.subcategory.key = valor
Se permiten múltiples niveles de categorías. Cada categoría debe tener un par de clave/valor como
mínimo. Una propiedad o variable es de este tipo cuando se declara como asignación. El objeto de
asignación no tiene propiedades.
Métodos
Sintaxis
Descripción
void AddItem(string key, string value)
Agrega el par de clave/valor a la asignación. Para
agregar el par de clave/valor a una categoría específica,
incluya el nombre de la categoría como parte de la clave
utilizando un punto para separar sus nombres. Si la
categoría no existe, se creará.
Parámetros:
key: la clave que se agregará a la asignación
value: el valor que se asignará a la clave
Devuelve:
Nada
map GetCategory(string category)
Devuelve una asignación de los pares de clave/valor
que pertenecen a la categoría especificada. Si la
categoría no existe, se devolverá una asignación sin
entradas.
Parámetros:
category: el nombre de la categoría.
Devuelve:
Una asignación con los pares de clave/valor que
pertenecen a la categoría especificada.
Objetos de tipo de datos
34
Sintaxis
Descripción
stringarray GetCategoryList()
Devuelve una lista de las categorías de nivel superior
de la asignación. Si no hay categorías, se devuelve una
matriz de cadenas sin elementos.
Parámetros:
Ninguno
Devuelve:
Una lista de las categorías de nivel superior de la
asignación.
stringarray GetKeyList()
Devuelve una lista de las claves de nivel superior de
la asignación. Si no hay claves de nivel superior, se
devuelve una matriz de cadenas sin elementos.
Parámetros:
Ninguno
Devuelve:
Una lista de las claves de nivel superior de la asignación.
string GetValue(string key)
Devuelve el valor de la clave especificada. Para obtener
el par de clave/valor de una categoría específica, incluya
el nombre de la categoría como parte de la clave
utilizando un punto para separar sus nombres. Si la clave
especificada no existe, se devuelve una cadena vacía.
Parámetros:
key: el nombre de la clave.
Devuelve:
El valor de la clave especificada.
bool HasCategory(string category)
Devuelve TRUE si la categoría especificada existe en la
asignación. Para comprobar si una categoría tiene una
subcategoría, separe sus nombres con un punto.
Parámetros:
category: el nombre de la categoría.
Devuelve:
Un valor bool que indica si la categoría existe en la
asignación.
bool HasKey(string key)
Devuelve TRUE si la clave especificada existe en la
asignación.
Para comprobar si el par de clave/valor existe en una
categoría específica, incluya el nombre de la categoría
como parte de la clave utilizando un punto para separar
sus nombres.
Parámetros:
key: el nombre de la clave.
Devuelve:
Un valor bool que indica si la clave existe en la
asignación.
Objetos de tipo de datos
35
Ejemplos:
Para crear una asignación que tenga las claves de primer nivel "nombre" y "apellido", así como
la categoría "dirección":
map info
info.AddItem("nombre", "juan")
info.AddItem("apellido", "garcía")
info.AddItem("dirección.calle", "12 Calle Mayor")
info.AddItem("dirección.ciudad", "Cualquiera")
info.AddItem("dirección.provincia", "Granada")
info.AddItem("dirección.cp,", "18001")
Siguiendo con el ejemplo anterior, para obtener información de la asignación:
stringarray catlist, keylist
map address
catlist = info.GetCategoryList()
address = info.GetCategory("dirección")
keylist = address.GetKeyList()
Usando de las variables anteriores:
address.HasKey("teléfono")devuelveFALSE
info.GetValue("nombre")devuelve"juan"
info.GetValue("dirección.cp")devuelve"40000"
address.GetValue("apartadocorreos ")devuelve""
Objetos de tipo de datos
36
4
Objetos auxiliares
Los objetos auxiliares se proporcionan para facilitar la realización de algunas operaciones
habituales. Actualmente, hay siete objetos de este tipo:
•
•
•
•
•
•
•
Matriz booleana
Dataset
Matriz de enteros
Opciones de impresión
Matriz de reales
Matriz de cadenas
TextFile
Para utilizar un objeto auxiliar, declare una variable del tipo de objeto específico.
Objetos auxiliares
37
Matriz booleana
El objeto de matriz booleana se utiliza para contener una colección de valores booleanos. El índice
de matriz empieza en 1. Una variable es de este tipo cuando se declara como: boolarray. El objeto
no tiene propiedades.
Métodos
Sintaxis
Descripción
void Add(bool item)
Agrega el elemento especificado al final de la matriz.
Parámetros:
item: valor booleano a agregar.
Devuelve:
Nada
bool GetAt(int index)
Devuelve el valor booleano del índice especificado.
Si se especifica un índice no válido, se devuelve
FALSE.
Parámetros:
index: índice del valor booleano en la matriz
a devolver.
Devuelve:
El valor booleano del índice especificado.
int GetSize()
Devuelve el número de elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Un entero con el número de elementos de la matriz.
void RemoveAll()
Elimina todos los elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Nada
void RemoveAt(int index)
Elimina el valor booleano del índice especificado;
todos los demás elementos de la matriz después
del índice especificado se mueven una posición
hacia arriba.
Parámetros:
index: índice del valor booleano en la matriz a eliminar.
Devuelve:
Nada
Objetos auxiliares
38
Dataset
El objeto dataset contiene el nombre de un Formset que se utilizará para realizar una combinación,
así como una asignación de pares de clave/valor que se corresponden con los campos del Formset
especificado. Una propiedad o variable es de este tipo cuando se declara como: dataset. El objeto
no tiene propiedades.
Métodos
Sintaxis
Descripción
string GetDataItem(string key)
Busca en la asignación la clave especificada
y devuelve su valor.
Parámetros:
key: par de clave/valor que se buscará.
Devuelve:
Una cadena que contiene el valor de la clave
especificada. Se devuelve una cadena vacía
si no existe la clave en dicha página.
string GetFormset()
Devuelve el nombre del formset que utiliza el dataset.
Parámetros:
Ninguno
Devuelve:
Una cadena que contiene el nombre del formset que
se utiliza.
bool Load(doc info)
Carga la información de dataset guardada
anteriormente de un archivo. Los valores anteriores
definidos para este dataset se borran y sustituyen
por los datos del archivo.
Parámetros:
info: documento que contiene el dataset.
Devuelve:
Un valor bool que indica si el dataset se ha cargado
correctamente.
bool Save(doc info)
Guarda los valores actuales del dataset en un
archivo. Este archivo se puede cargar
posteriormente para volver a crear una combinación
sin necesidad de la entrada original.
Parámetros:
info: documento en el que se guardará el dataset.
Devuelve:
Un valor bool que indica si el formset se ha guardado
correctamente.
Objetos auxiliares
39
Sintaxis
Descripción
void SetDataItem(string key, string value)
Agrega el par de clave/valor a la asignación.
Parámetros:
key: clave a agregar.
value: valor que se asignará a la clave.
Devuelve:
Nada
void SetFormset(string formset)
Define el nombre del formset que utiliza el dataset.
Parámetros:
formset: nombre del formset.
Devuelve:
Nada
Objetos auxiliares
40
Matriz de enteros
El objeto de matriz de enteros se utiliza para contener una colección de enteros. El índice de matriz
empieza en 1. Una variable es de este tipo cuando se declara como: intarray. El objeto no tiene
propiedades.
Métodos
Sintaxis
Descripción
void Add(int item)
Agrega el elemento especificado al final de la matriz.
Parámetros:
item: entero a agregar.
Devuelve:
Nada
int GetAt(int index)
Devuelve el entero del índice especificado. Si se
especifica un índice no válido, se devuelve cero (0).
Parámetros:
index: índice del entero en la matriz a devolver.
Devuelve:
El entero del índice especificado.
int GetSize()
Devuelve el número de elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Un entero con el número de elementos de la matriz.
void RemoveAll()
Elimina todos los elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Nada
void RemoveAt(int index)
Elimina el entero del índice especificado; todos los
demás elementos de la matriz después del índice
especificado se mueven una posición hacia arriba.
Parámetros:
index: índice del entero en la matriz a eliminar.
Devuelve:
Nada
Objetos auxiliares
41
Opciones de impresión
El objeto de opciones de impresión se utiliza para especificar opciones de impresión por trabajo
y por página como dúplex, orientación y bandeja de salida. La acción PrintForm utiliza este objeto
para determinar la forma correcta de imprimir su documento de entrada. Una variable o propiedad
es de este tipo cuando se declara como: printoptions. El objeto no tiene propiedades.
Métodos
Sintaxis
Descripción
bool SetJobOption(int optionid, int valueid)
Define una opción de impresión que se aplica a todo
el trabajo de impresión. Cuando se combina con las
opciones de página, las opciones de trabajo sirven
de valores predeterminados para el trabajo y las
anulan las opciones de página.
Parámetros:
optionid: opción de trabajo a definir.
valueid: valor que se definirá para la opción
de trabajo.
Devuelve:
Un valor bool que indica si la opción de trabajo
se ha definido.
bool SetPageOption(int optionid, int valueid, int
startpage, int endpage)
Define una opción de impresión que se aplica al
rango de páginas especificado. Para definir una
opción para una sola página, especifique dicha
página como inicial y final.
Parámetros:
optionid: opción de trabajo a definir.
valueid: valor que se definirá para la opción
de trabajo.
startpage: primera página a la que se debe aplicar
la opción.
endpage: última página a la que se debe aplicar
la opción.
Devuelve:
Un valor bool que indica si la opción de página
se ha definido.
Objetos auxiliares
42
Opciones
ID de opción
Valor posible
LDD_PRINTOPTION_COLLATE
LDD_COLLATE_ON
LDD_COLLATE_OFF
LDD_PRINTOPTION_COLORMODEL
LDD_COLORMODEL_BLACK
LDD_COLORMODEL_CMYK
LDD_PRINTOPTION_COPIES
Número entero de copias
LDD_PRINTOPTION_DUPLEX
LDD_DUPLEX_OFF
LDD_DUPLEX_LONGEDGE
LDD_DUPLEX_SHORTEDGE
LDD_PRINTOPTION_HOLEPUNCH
LDD_HOLEPUNCH_ON
LDD_HOLEPUNCH_OFF
LDD_PRINTOPTION_NUP
LDD_NUP_OFF
LDD_NUP_2UP
LDD_NUP_3UP
LDD_NUP_4UP
LDD_NUP_6UP
LDD_NUP_9UP
LDD_NUP_12UP
LDD_NUP_16UP
LDD_PRINTOPTION_NUP_BORDER
LDD_NUP_BORDER_ON
LDD_NUP_BORDER_OFF
LDD_PRINTOPTION_NUP_ORDER
LDD_NUP_ORDER_HORIZONTAL
LDD_NUP_ORDER_VERTICAL
LDD_NUP_ORDER_REV_HORIZONTAL
LDD_NUP_ORDER_REV_VERTICAL
LDD_PRINTOPTION_NUP_VIEW
LDD_NUP_ORIENTATION_AUTO
LDD_NUP_ORIENTATION_PORTRAIT
LDD_NUP_ORIENTATION_LANDSCAPE
LDD_PRINTOPTION_ORIENTATION
LDD_ORIENTATION_PORTRAIT
LDD_ORIENTATION_LANDSCAPE
Objetos auxiliares
43
ID de opción
Valor posible
LDD_PRINTOPTION_OUTPUTBIN
LDD_OUTPUTBIN_STANDARD
LDD_OUTPUTBIN_1
LDD_OUTPUTBIN_2
LDD_OUTPUTBIN_3
LDD_OUTPUTBIN_4
LDD_OUTPUTBIN_5
LDD_OUTPUTBIN_6
LDD_OUTPUTBIN_7
LDD_OUTPUTBIN_8
LDD_OUTPUTBIN_9
LDD_OUTPUTBIN_10
LDD_PRINTOPTION_PAPERSIZE
LDD_PAPERSIZE_11X17
LDD_PAPERSIZE_A3
LDD_PAPERSIZE_A4
LDD_PAPERSIZE_A5
LDD_PAPERSIZE_FOLIO
LDD_PAPERSIZE_JISB4
LDD_PAPERSIZE_JISB5
LDD_PAPERSIZE_LEGAL
LDD_PAPERSIZE_LETTER
LDD_PAPERSIZE_STATEMENT
LDD_PAPERSIZE_UNIVERSAL
LDD_PRINTOPTION_PAPERSOURCE
LDD_PAPERSOURCE_TRAY1
LDD_PAPERSOURCE_TRAY2
LDD_PAPERSOURCE_TRAY3
LDD_PAPERSOURCE_TRAY4
LDD_PAPERSOURCE_TRAY5
LDD_PAPERSOURCE_ENV_FEEDER
LDD_PAPERSOURCE_MP_FEEDER
LDD_PAPERSOURCE_MANUAL_ENV
LDD_PAPERSOURCE_MANUAL_PAPER
Objetos auxiliares
44
ID de opción
Valor posible
LDD_PRINTOPTION_PAPERTYPE
LDD_PAPERTYPE_PLAIN
LDD_PAPERTYPE_COLOR
LDD_PAPERTYPE_TRANSPARENCY
LDD_PAPERTYPE_CARDSTOCK
LDD_PAPERTYPE_LABELS
LDD_PAPERTYPE_LETTERHEAD
LDD_PAPERTYPE_PREPRINTED
LDD_PAPERTYPE_BOND
LDD_PAPERTYPE_ENVELOPE
LDD_PAPERTYPE_CUSTOM1
LDD_PAPERTYPE_CUSTOM2
LDD_PAPERTYPE_CUSTOM3
LDD_PAPERTYPE_CUSTOM4
LDD_PAPERTYPE_CUSTOM5
LDD_PAPERTYPE_CUSTOM6
LDD_PRINTOPTION_RESOLUTION
LDD_RESOLUTION_75
LDD_RESOLUTION_150
LDD_RESOLUTION_200
LDD_RESOLUTION_300
LDD_RESOLUTION_400
LDD_RESOLUTION_500
LDD_RESOLUTION_600
LDD_RESOLUTION_1200
LDD_RESOLUTION_1200IQ
LDD_PRINTOPTION_STAPLE
LDD_STAPLE_ON
LDD_STAPLE_OFF
LDD_PRINTOPTION_TONERSAVER
LDD_TONERSAVER_ON
LDD_TONERSAVER_OFF
Notas:
•
LDD_PRINTOPTION_COLORMODEL sólo se utiliza cuando se imprime en una impresora en color.
Si se define como BLACK, la impresora sólo utilizará el cartucho negro para reproducir la página.
Si se define en CMYK, permitirá que también se utilicen los cartuchos de color.
•
LDD_PRINTOPTION_RESOLUTION y LDD_PRINTOPTION_STAPLE no son opciones de página
válidas; sólo se pueden definir mediante SetJobOption.
Objetos auxiliares
45
•
Al especificar opciones de página, tenga en cuenta que cambiar algunas opciones, como el tamaño
del papel, puede provocar que algunas opciones no funcionen según lo esperado. Por ejemplo,
si se activa la opción dúplex para las páginas uno y dos, pero el tamaño del papel para la página
uno se define en Carta y el de la página dos en Legal, no se llevará a cabo la operación dúplex en
las páginas.
•
El tamaño de papel Universal se personaliza mediante el menú de la impresora y permite definir
el tamaño y el avance del papel. Si el tamaño de papel para una página se define en Universal,
la orientación definida para dicha página no se aceptará debido a que Universal es tanto un tamaño
como una orientación.
•
Si se define el tamaño del papel y el origen del papel, éste último valor anulará el de tamaño.
Se recomienda definir uno u otro.
Objetos auxiliares
46
Matriz de reales
El objeto de matriz de reales se utiliza para contener una colección de números reales. El índice de
matriz empieza en 1. Una variable es de este tipo cuando se declara como: realarray. El objeto no
tiene propiedades.
Métodos
Sintaxis
Descripción
void Add(real item)
Agrega el elemento especificado al final de la matriz.
Parámetros:
item: número real a agregar.
Devuelve:
Nada
real GetAt(int index)
Devuelve el número real del índice especificado. Si
se especifica un índice no válido, se devuelve cero
(0,0).
Parámetros:
index: índice del número real en la matriz a devolver.
Devuelve:
El número real del índice especificado.
int GetSize()
Devuelve el número de elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Un entero con el número de elementos de la matriz.
void RemoveAll()
Elimina todos los elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Nada
void RemoveAt(int index)
Elimina el número real del índice especificado;
todos los demás elementos de la matriz después
del índice especificado se mueven una posición
hacia arriba.
Parámetros:
index: índice del número real en la matriz a eliminar.
Devuelve:
Nada
Objetos auxiliares
47
Matriz de cadenas
El objeto de matriz de cadenas se utiliza para contener una colección de cadenas. El índice de
matriz empieza en 1. Una variable es de este tipo cuando se declara como: stringarray. El objeto
no tiene propiedades.
Métodos
Sintaxis
Descripción
void Add(string item)
Agrega el elemento especificado al final de la matriz.
Parámetros:
item: cadena a agregar.
Devuelve:
Nada
string GetAt(int index)
Devuelve la cadena del índice especificado. Si se
especifica un índice no válido, se devuelve una
cadena vacía.
Parámetros:
index: el índice de la cadena en la matriz a devolver
Devuelve:
La cadena del índice especificado.
int GetSize()
Devuelve el número de elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Un entero con el número de elementos de la matriz.
void RemoveAll()
Elimina todos los elementos de la matriz.
Parámetros:
Ninguno
Devuelve:
Nada
void RemoveAt(int index)
Elimina la cadena del índice especificado; todos los
demás elementos de la matriz después del índice
especificado se mueven una posición hacia arriba.
Parámetros:
index: el índice de la cadena en la matriz a eliminar
Devuelve:
Nada
Objetos auxiliares
48
Ejemplo:
Para una cadena, str, que tiene el valor "José,María,Juan,Ana", si llama al método separate del
objeto de cadena, devuelve una matriz en la que cada entrada es uno de los nombres.
stringarray a
string str = "José,María,Juan,Ana"
a = str.Separate(",")
a.GetSize()
devuelve
4
a[1]
o
a.GetAt(1)
devuelve
"José"
a[2]
o
a.GetAt(2)
devuelve
"María"
a[3]
o
a.GetAt(3)
devuelve
"Juan"
a[4]
o
a.GetAt(4)
devuelve
"Ana"
string.GetSize()
devuelve
4
string.Add()
devuelve
Lo que haya agregado
a la matriz.
string.Remove()
devuelve
Elimina una entrada
de la matriz.
string.RemoveAll()
devuelve
Elimina todas las entradas
de la matriz.
Objetos auxiliares
49
Textfile
El objeto textfile se utiliza para trabajar en un único archivo de texto; no puede trabajar con
imágenes ni con varios archivos. Se puede utilizar para leer el texto de un archivo existente
o para escribir texto en un archivo nuevo o existente para usarlo en otro proceso.
Una variable es de este tipo cuando se declara como: textfile. El objeto tiene una propiedad.
Nombre
Descripción
Tipo
Información adicional
filetype
Cada sistema operativo
gestiona las nuevas
líneas de forma distinta.
Utilice este valor para
indicar el sistema
operativo en el que se
ha creado el archivo y/o
el sistema en el que el
usuario lo utilizará
posteriormente.
int (LDD Constant)
Valores válidos:
LDD_FILETYPE_UNIX
LDD_FILETYPE_DOS
LDD_FILETYPE_MAC
Valor predeterminado:
LDD_FILETYPE_UNIX
Métodos
Sintaxis
Descripción
bool Append(string text)
Añade text al final del archivo. El puntero de archivo se
mueve al final del texto añadido. Se produce un error
en el método si no se ha abierto un archivo o no hay
espacio en el disco.
Parámetros:
text: datos que se añadirán al archivo.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
bool AppendLine(string text)
Añade text al final del archivo e inserta una nueva línea
al final del texto especificado. El puntero de archivo se
mueve al final del texto añadido, después de la nueva
línea. Se produce un error en el método si no se ha
abierto un archivo o no hay espacio en el disco.
Parámetros:
text: datos que se añadirán al archivo.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
Objetos auxiliares
50
Sintaxis
Descripción
bool Clear()
Elimina el contenido del archivo. Se produce un error
en el método si no se ha abierto un archivo.
Parámetros:
Ninguno
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
void Close()
Cierra el archivo asociado a este objeto.
Parámetros:
Ninguno
Devuelve:
Nada
bool Eof()
Comprueba si el puntero de archivo está al final del
archivo. Devuelve TRUE si se ha llegado al final del
archivo; de lo contrario, devuelve FALSE.
Parámetros:
Ninguno
Devuelve:
Un valor bool que indica si el puntero de archivo está
al final del archivo.
string GetLine(int line)
Devuelve la línea de texto especificada por el parámetro
line sin ningún carácter de nueva línea en la cadena
devuelta. Una línea termina cuando se encuentra un
carácter de nueva línea. Este método no mueve el
puntero de archivo. Si no existe line o no hay abierto
un archivo, se devuelve una cadena vacía.
Parámetros:
line: la línea de texto a obtener
Devuelve:
Una cadena que contiene la línea de texto menos
el carácter de nueva línea.
int GetNumberLines()
Devuelve el número de líneas del archivo. Una línea
termina cuando se encuentra un carácter de nueva
línea. Este método no mueve el puntero de archivo.
Se devuelve cero (0) si no se ha abierto un archivo.
Parámetros:
Ninguno
Devuelve:
Un entero con el número de líneas de texto de este
archivo.
Objetos auxiliares
51
Sintaxis
Descripción
bool Open(doc doc1)
Abre el primer archivo del documento especificado
y define el puntero de archivo al principio del archivo.
Normalmente se llama para utilizar un archivo creado
por otra acción. Se produce un error en el método si el
documento especificado no existe.
Parámetros:
doc1: documento a abrir.
Devuelve:
Un valor bool que indica si el archivo se ha abierto
correctamente.
bool Open(string file, bool create)
Abre el archivo especificado y define el puntero de
archivo al principio del archivo. Si el archivo no existe y
el parámetro create se ha definido en TRUE, se creará
el archivo; de lo contrario, el archivo no se creará y se
producirá un error en el método. También se puede
producir un error en el método si algún directorio de la
ruta de acceso no existe o si la ruta de acceso está en
una unidad de red a la que Document Server no tiene
derechos de acceso.
Parámetros:
file: ruta de acceso completa del archivo a abrir.
create: especifica si se creará el archivo si no existe.
Devuelve:
Un valor bool que indica si el archivo se ha abierto
correctamente.
string Read(int count)
Devuelve el número de caracteres especificados en el
parámetro count del archivo a partir de la posición
actual del puntero de archivo. Dicho puntero se mueve
a la posición situada después del último carácter leído.
Si el parámetro count es mayor que los caracteres
restantes en el archivo, se devuelven los caracteres
hasta el final del archivo. Si no se ha abierto un archivo
o el puntero de archivo está al final del archivo, se
devuelve una cadena vacía.
Parámetro:
count: el número de caracteres que se leerán
Devuelve:
Una cadena con los caracteres especificados que se han
leído del archivo.
Objetos auxiliares
52
Sintaxis
Descripción
string ReadLine()
Devuelve la siguiente línea del archivo. El puntero de
archivo avanza hasta que se encuentra un carácter de
nueva línea. La cadena devuelta no incluye el carácter
de nueva línea. Si no se ha abierto un archivo o el
puntero de archivo está al final del archivo, se devuelve
una cadena vacía.
Parámetros:
Ninguno
Devuelve:
Una cadena que contiene la siguiente línea de texto
del archivo.
bool Rewind()
Mueve el puntero de archivo al principio del archivo.
Se produce un error en este método si no se ha abierto
un archivo.
Parámetros:
Ninguno
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
int Size()
Devuelve el tamaño en bytes del archivo de texto.
Se devuelve cero (0) si no se ha abierto un archivo.
Parámetros:
Ninguno
Devuelve:
Un entero con el tamaño del archivo en bytes.
bool Write(string data)
Escribe el parámetro data en el archivo de texto en la
posición actual del puntero de archivo. Dicho puntero
se mueve a una posición después del último carácter
escrito. Se produce un error en este método si no se
ha abierto un archivo o falta espacio en el disco.
Parámetros:
data: cadena que se escribirá en el archivo de texto.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
bool WriteLine(string data)
Escribe el parámetro data en el archivo de texto en la
posición actual del puntero de archivo. Se escribe un
carácter de nueva línea después de data. El puntero de
archivo se mueve a una posición después del carácter
de nueva línea. Se produce un error en este método si
no se ha abierto un archivo o falta espacio en el disco.
Parámetros:
data: cadena que se escribirá en el archivo de texto.
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
Objetos auxiliares
53
Ejemplo 1:
Supongamos que en el directorio raíz c:\ hay un archivo denominado "data.txt". A continuación se
muestra el código LDDScript que leerá el contenido de dicho archivo.
textfile tf
string data
int size
tf.Open("c:\data.txt", FALSE)
size = tf.Size()
data = tf.Read(size)
tf.Close()
Ejemplo 2:
Supongamos que desea guardar los datos de usuario (userdata) que se han enviado con el trabajo
en un archivo .xml para procesarlo posteriormente. El archivo se debe guardar en un directorio de
datos; el nombre de cada archivo debe ser el tiempo de usuario (usertime) para garantizar un
nombre único.
textfile tf
string data
tf.Open("c:\data\" + original.usertime + ".xml", TRUE)
tf.WriteLine("<? xml version=’1.0’>")
tf.WriteLine("<metadata>")
data = "<account number=’" + userdata.acct + "’>"
tf.WriteLine(data)
data = "<copies number=’" + userdata.copies.AsString() + "’ />"
tf.WriteLine("</account>")
tf.WriteLine("</metadata>")
tf.WriteLine(data)
tf.Close()
El archivo de datos XML que produce el script anterior debe coincidir o asemejarse a la información
siguiente:
<? xml version="1.0">
<metadata>
<account number="12345">
<copies number="1" />
</account>
</metadata>
Objetos auxiliares
54
5
Objetos del sistema
Los objetos del sistema permiten obtener información sobre el documento enviado originalmente
o sobre el usuario que ha enviado el trabajo. También permiten personalizar la información
proporcionada a los usuarios finales que envían trabajos. Se admiten los siguientes objetos del
sistema:
•
original: proporciona información sobre el documento enviado y el usuario que lo ha enviado.
•
confirm: proporciona una interfaz para agregar información a la página o cuadro de diálogo de
confirmación que el usuario ve cuando ha terminado el trabajo
•
local: contiene valores introducidos por el administrador de Server Manager cuando el script se
importa al servidor
Los objetos del sistema no se pueden declarar como variables y no hay propiedades de objeto de
este tipo. Estos objetos existen automáticamente para cada script. Para usar uno, utilice el tipo de
objeto seguido de un punto y, a continuación, el nombre de propiedad o método.
Objetos del sistema
55
Original
El objeto original contiene todos los datos e información enviados para el trabajo. La información
sobre el remitente está disponible para todos los scripts. La demás información varía según el tipo
de script que se ejecute. Todas las propiedades del objeto son de sólo lectura; el objeto no contiene
métodos. Para acceder a la lista desplegable de propiedades, como userip, (que se muestra en la
lista de barra de desplazamiento) introduzca un punto (.) después de escribir la cadena "original".
Las siguientes propiedades están disponibles para todos los scripts:
Propiedad
Descripción
Tipo
Información adicional
userip
Dirección IP del dispositivo
(impresora multifunción o
estación de trabajo de usuario)
que ha enviado el trabajo.
string
Si se ha enviado mediante un flujo de
impresión, esta propiedad es una cadena
vacía.
username
Nombre del usuario que ha
enviado la solicitud.
string
Si se ha enviado mediante una impresora
multifunción que no requiere
autenticación, este valor es "Usuario de
impresora multifunción".
Si se ha enviado mediante un flujo de
impresión, este valor contiene información
proporcionada por dicho flujo.
useracct
Número de cuenta enviado
con el trabajo.
string
Este número sólo lo proporcionan
las impresoras multifunción que tienen
activado el seguimiento de trabajos. Para
todos los demás trabajos, este valor es
una cadena vacía.
usertime
Hora a la que se envió el
trabajo al servidor.
string
Es la misma hora utilizada para todas
las acciones que tienen la propiedad
AppendTimestamp. Para obtener
información sobre el formato de estos
datos, consulte Usertime en la página 57.
scriptname
Nombre del script que se está
ejecutando actualmente.
string
metadata
Cualquier otro dato enviado
con el trabajo que no
corresponda a una propiedad
existente.
map
Para obtener más información sobre
la propiedad de metadatos, consulte
Referencia de metadatos en la
página 238.
Objetos del sistema
56
Usertime
El formato del sello de hora es:
_DD_MES_AAAA_HH_MM_SS_MSEG
donde:
•
MES es la abreviatura de tres letras del mes
•
DD es el día del mes
•
AAAA es el año de cuatro dígitos
•
HH es la hora con formato de 24 horas
•
MM son los minutos
•
SS son los segundos
•
MSEG son los milisegundos
Nota: observe que se coloca un carácter de subrayado delante del mes.
Las siguientes propiedades adicionales están disponibles para los scripts de Document Distributor
que requieren un envío de documento:
Propiedad
Descripción
Tipo
document
Documento enviado con
el trabajo.
doc
scansize
Tamaño de papel del
documento digitalizado según
lo definido por el perfil.
int (LDD
constant)
Información adicional
Si el trabajo se envía mediante una
estación de trabajo, este valor es 0.
Si se envía mediante una impresora
multifunción, es uno de los valores
siguientes:
LDD_SCANSIZE_A3
LDD_SCANSIZE_A4
LDD_SCANSIZE_A5
LDD_SCANSIZE_B4
LDD_SCANSIZE_B5
LDD_SCANSIZE_BOOK
LDD_SCANSIZE_BUSCARD
LDD_SCANSIZE_EXECUTIVE
LDD_SCANSIZE_LEGAL
LDD_SCANSIZE_LETTER
LDD_SCANSIZE_PHOTO35
LDD_SCANSIZE_PHOTO46
LDD_SCANSIZE_TABLOID
Objetos del sistema
57
Propiedad
Descripción
Tipo
Información adicional
scanorient
Orientación del documento
digitalizado.
int (LDD
constant)
Si el trabajo se envía mediante una
estación de trabajo y no se puede
determinar, este valor es 0. Si se envía
mediante una impresora multifunción,
es uno de los valores siguientes:
LDD_ORIENTATION_PORTRAIT
LDD_ORIENTATION_LANDSCAPE
scandepth
Profundidad de color del
documento digitalizado.
int (LDD
Constant)
Si el trabajo se envía mediante una
estación de trabajo y no se puede
determinar, este valor es 0. Si se envía
mediante una impresora multifunción,
es uno de los valores siguientes:
LDD_IMGDEPTH_BW
LDD_IMGDEPTH_8G
LDD_IMGDEPTH_24C
scanres
Resolución del documento
digitalizado.
real
Si el trabajo se envía mediante una
estación de trabajo y no se puede
determinar, este valor es 0.
scanpages
Número de páginas del
documento digitalizado.
int
Si el trabajo se envía mediante una
estación de trabajo y no se puede
determinar, este valor es 0.
scanrotateodd
Número de grados que se
tienen que girar las páginas
impares con el fin de obtener
la orientación que solicita el
perfil.
int
Si el trabajo se envía mediante una
estación de trabajo, este valor es 0.
Si se envía mediante una impresora
multifunción, los valores posibles son:
0, 90, 180 y 270.
scanrotateeven Número de grados que se
tienen que girar las páginas
pares con el fin de obtener la
orientación que solicita el
perfil.
int
Si el trabajo se envía mediante una
estación de trabajo, este valor es 0.
Si se envía mediante una impresora
multifunción, los valores posibles son:
0, 90, 180 y 270.
Las siguientes propiedades adicionales están disponibles para los scripts de Document Producer:
Propiedad
Descripción
Tipo
Información adicional
dataset
Datos que se utilizarán para
realizar la combinación de
formularios para este trabajo.
dataset
EL nombre del formset así como los
datos a combinar ya estarán definidos.
Se puede pasar como entrada de la
acción MergeForm.
Objetos del sistema
58
Las siguientes propiedades adicionales están disponibles para los scripts de Document Portal:
Propiedad
Descripción
Tipo
Información adicional
printoptions
Opciones de impresión que se
utilizarán para este trabajo.
printoptions
Se puede pasar a la acción
PrintForm.
printerip
Dirección IP de la impresora
asociada al cliente de
Document Portal remitente.
string
Se puede utilizar para determinar
la impresora adecuada para imprimir
el formulario.
formsetname
Nombre del formset que se
utilizará para este trabajo.
string
Se puede utilizar para generar un
dataset necesario con el fin de
obtener un formulario en blanco
o rellenado automáticamente.
kioskid
ID del cliente de Document
Portal que ha enviado la
solicitud.
string
Objetos del sistema
59
Confirm
El objeto confirm permite controlar la información que aparece en la página de confirmación (para
los trabajos enviados mediante una impresora multifunción) o el cuadro de diálogo de confirmación
(para los trabajos enviados mediante Print ‘N’ Send o Select ‘N’ Send). Estas páginas o cuadros de
diálogo de confirmación aparecen después de que se haya procesado el trabajo. Puede definir el
comportamiento predeterminado de todos los scripts modificando los valores de trabajo en Server
Manager.
En ocasiones puede que sea necesario anular los valores predeterminados desde un script y, para
ello, puede utilizar el objeto confirm. Para acceder a las propiedades y métodos, utilice:
confirm.propertyname
confirm.methodname()
A continuación, se ofrecen las propiedades del objeto Confirm.
Propiedad
Tipo
Valor
Descripción
input
doc
original.document
Controla el origen que
se utiliza para generar
las miniaturas en la
página de confirmación.
level
int
LDD_CONFIRM_OFF: no se utiliza ninguna página
o cuadro de diálogo de confirmación para este script.
Controla el tipo de
página o cuadro de
diálogo de
confirmación que se
utilizará para el script.
De forma
predeterminada, se
utiliza el valor definido
en los valores del
servidor.
LDD_CONFIRM_SCRIPT: el script proporciona todo
el contenido para la página o cuadro de diálogo de
confirmación.
LDD_CONFIRM_ERROR: todas las advertencias
o errores se agregan automáticamente a la página
o cuadro de diálogo de confirmación. El script
proporciona el resto del contenido.
LDD_CONFIRM_VERBOSE: todos los objetos de
acción agregan automáticamente información después
de ejecutarse además de otras advertencias o errores.
printmfp
int
LDD_CONFIRM_NEVER: nunca se imprime una
página de confirmación.
LDD_CONFIRM_ALWAY: siempre se imprime una
página de confirmación.
LDD_CONFIRM_ONERROR: sólo se imprime una
página de confirmación si se produce una advertencia
o error.
Objetos del sistema
60
Controla si se debe
imprimir una página
de confirmación para
los trabajos enviados
mediante una
impresora multifunción.
El valor
predeterminado es que
siempre se imprima.
Propiedad
Tipo
Valor
Descripción
displayws
int
LDD_CONFIRM_NEVER: nunca se muestra un cuadro
de diálogo de confirmación.
Controla si se muestra
un cuadro de diálogo
de confirmación en el
ordenador del usuario
que ha enviado el
trabajo después de
terminarlo. De forma
predeterminada, este
cuadro de diálogo
siempre se muestra.
LDD_CONFIRM_ALWAYS: siempre se muestra un
cuadro de diálogo de confirmación.
LDD_CONFIRM_ONERROR: sólo se muestra un
cuadro de diálogo de confirmación si se produce una
advertencia o error.
thumbs
int
-1 = incluir miniaturas de todas las páginas
0 = No incluir miniaturas de ninguna página
1–3 = Incluir una miniatura del primer número de
páginas x
Controla el número de
imágenes de miniatura
que se incluyen con la
página de
confirmación. De forma
predeterminada, se
utiliza el valor definido
en los valores del
servidor.
includePrompts
bool
TRUE o FALSE, Predeterminado = FALSE
Incluir las solicitudes
y sus respuestas en
la página de
confirmación.
override
bool
TRUE o FALSE, Predeterminado = FALSE
Permite que se anule
la acción de la página
de confirmación
predeterminada de
imprimir trabajos de la
impresora multifunción
y mostrar un cuadro de
diálogo en los equipos.
Al anular esta acción,
se genera una imagen
TIF de la página de
confirmación. Esta
imagen se puede enviar
por e-mail, guardar en
un archivo o realizar
con ella cualquier otra
acción disponible en
un script.
output
doc
Sólo está disponible
si la anulación está
definida en TRUE y
se ha llamado después
del método Go.
Contendrá la imagen
TIF de la página de
confirmación.
Objetos del sistema
61
A continuación, se ofrecen los métodos del objeto Confirm.
Sintaxis
Descripción
void Reset()
Provoca que todas las propiedades de este objeto se vuelvan a definir
en los valores del servidor.
void AddItem(string title,
bool success, string msg
[, string err])
Agrega una línea al final de la página o cuadro de diálogo de
confirmación. Si se llama varias veces, cada línea se agrega en el orden
en que se llama al método.
Parámetros:
title: título breve que aparece en la primera columna de la página o cuadro
de diálogo
success: indica si esta línea se ha agregado correcta o incorrectamente.
Si está definido en TRUE, aparece "Terminado" en la segunda columna.
De lo contrario, aparece "Error".
msg: descripción de mayor tamaño que aparece en la tercera columna.
err: parámetro opcional. Cuando se especifica, este texto aparece después
de la palabra del parámetro success en la segunda columna. Normalmente,
se utiliza para un mensaje de error o advertencia.
Devuelve:
Nada
void Clear()
Elimina todos los elementos agregados a la página de confirmación por
el método Daytime o cualquier otro objeto.
Parámetros:
Ninguno
Devuelve:
Nada
bool Go ()
Hace que se genere la página de confirmación. Este método sólo se
debe llamar en un archivo de script si la propiedad de anulación se ha
definido en TRUE. El servidor llamará automáticamente a este método
para los scripts que se están anulando.
Para los siguientes ejemplos, se supone que el comportamiento predeterminado para las páginas/
cuadros de diálogo de confirmación es tener el nivel de confirmación definido en detallado e imprimir
y mostrar siempre.
Para el script A, desea que todas las páginas/cuadros de diálogo estén desactivados. Al comienzo
del script, agregue la siguiente línea:
confirm.level = LDD_CONFIRM_OFF
Para el script B, desea que las páginas de confirmación estén desactivadas, pero que aún se sigan
mostrando los cuadros de diálogo de confirmación. Al comienzo del script, agregue:
confirm.printmfp = LDD_CONFIRM_NEVER
Objetos del sistema
62
Para el script C, desea utilizar los comentarios predeterminados, excepto cuando esté dentro
de un bucle. Tiene que cambiar el nivel a script antes del bucle, agregar sus propios comentarios
y, a continuación, restablecer el nivel a detallado siguiendo el script. Para ello, agregue:
(otro procesamiento de script)
confirm.level = LDD_CONFIRM_SCRIPT
loop (x from 1 to 5)
(imprimir copias)
endloop
confirm.AddItem("Imprimir", TRUE, "Copias enviadas para comercialización")
confirm.level = LDD_CONFIRM_VERBOSE
(continuar el procesamiento de script)
Estos ejemplos muestran las distintas formas en que se puede utilizar el objeto confirm para
aumentar el comportamiento especificado en los valores de página de confirmación según el script.
Ejemplo de anulación
Para anular la acción de la página de confirmación predeterminada, agregue lo siguiente al final
del script:
Ejemplo:
confirm.Override = TRUE // activa la función de anulación
confirm.go()
// hace que se genere la imagen de la página de confirmación
confirm.level = LDD_CONFIRM_OFF // desactiva la acción de la página de
confirmación para el
// resto del script
with EmailSMTP
.To = "alguien@suemp.com"
.From = "otrapersona@suemp.com"
.Subject = "Confirmación del trabajo"
.Message = "Aquí tienes la confirmación del trabajo"
.Attachment = confirm.output
.Server="correo.suemp.com"
.CharacterSet=LDD_SMTPCHARSET_US
.Go()
endwith
En el ejemplo anterior se envía por e-mail la página de confirmación (confirm.output) a otro
usuario. Esta página de confirmación se puede simplemente guardar en un archivo, insertar en una
base de datos o utilizar en otra acción LDD. Al desactivar la página de confirmación (mediante la
sentencia confirm.level) evita que el script genere una página de confirmación automáticamente.
Objetos del sistema
63
Local
El objeto local contiene los valores introducidos por el administrador al importar el script a Server
Manager. Cuando se escribe un script, una de las opciones es definir valores locales que establece
el administrador al importarlo. Normalmente, estos valores se utilizan para datos que pueden variar
de un servidor a otro (como direcciones IP de impresora, direcciones de e-mail, números de fax,
contraseñas, etc.). Este objeto proporciona acceso a dicha información.
Por cada valor que se solicitará al administrador, se asigna un nombre de variable y un tipo de datos
junto con otras opciones. El nombre de variable que asigne se convierte en una de las propiedades
del objeto local y el valor suministrado por el administrador se almacena en dicha propiedad. Para
acceder a las propiedades del objeto local, utilice local.propertyname
Por ejemplo, suponga que desea solicitar al administrador la dirección IP de la impresora que se
utilizará para el script. Al escribir el script, debe definir un valor local (esta acción se realiza en el
cuadro de diálogo Valores locales del Asistente de scripts de Workflow Composer) con el nombre
de variable “printerip” y asignarle el tipo de datos string. Para acceder a este valor en el script,
utilice:
string ip
ip = local.printerip
Aunque en el ejemplo anterior se utilizan variables para contener los valores, no es necesario
para utilizar el valor. Debido a que se ha definido un tipo de datos para cada valor, la propiedad local
se puede usar donde se pueda utilizar un valor de dicho tipo de datos. Siguiendo con el ejemplo
anterior, la acción PrintJob podría utilizar el valor:
PrintJob.ipaddress = local.printerip
Objetos del sistema
64
6
Objetos de acción
Muchos objetos de acción crean un nuevo documento como resultado de su ejecución. Si una
acción tiene una propiedad denominada output, crea un nuevo documento nuevo durante su
ejecución. Sin embargo, este documento no existe hasta que se ha llamado al método Go. Antes de
llamar a Go por primera vez, es simplemente un documento vacío. Este nuevo documento de salida
sólo está disponible mientras se ejecuta el script; si necesita utilizarlo después de terminado el
script, es necesario incluir en el mismo una acción que guarde o archive el documento.
En el resto de este capítulo se explican los objetos de acción disponibles.
Objetos de acción
65
BarcodeRead (Códigos de barras: leer)
Objetivo: leer uno o varios códigos de barras de un determinado tipo en una sola página. Para
leer códigos de barras de distintos formatos de una página, esta acción se debe utilizar varias veces.
La acción falla si no se encuentra ningún código de barras del tipo especificado en la página.
Grupo de instalación: CD de código de barras
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen
de la acción.
doc
Sólo se puede leer una página
del documento. Utilice la propiedad
PageNumber para especificar
la página.
Validate
Activa la validación
de los caracteres de
código y la suma de
verificación.
bool
Se puede utilizar si la calidad de la
imagen es demasiado deficiente como
para que el código de barras sea
legible, pero se necesita la presencia
del código de barras y no de los datos.
Esto se aplica a los códigos de barras
del tipo:
LDD_BARCODE_CODE39
LDD_BARCODE_CODE39_CHK
LDD_BARCODE_CODE93
LDD_BARCODE_ITF
LDD_BARCODE_ITF_CHK
LDD_BARCODE_CODE128
Se ignora para todos los demás.
Valor predeterminado:
TRUE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
66
Nombre
Descripción
Tipo de datos
Type
Tipo de código de
int
barras que se leerá.
(LDD Constant)
Información adicional
Para obtener más información sobre
los distintos tipos de códigos de
barras, consulte Referencia de
códigos de barras en la página 230.
Valores válidos:
LDD_BARCODE_CODE39
LDD_BARCODE_CODE39_CHK
LDD_BARCODE_CODE93
LDD_BARCODE_CODABAR
LDD_BARCODE_CODE128
LDD_BARCODE_UCC128
LDD_BARCODE_C25_INDUSTRIAL
LDD_BARCODE_C25_MATRIX
LDD_BARCODE_C25_DATALOGIC
LDD_BARCODE_C25_AIRLINE
LDD_BARCODE_ITF
LDD_BARCODE_ITF_CHK
LDD_BARCODE_UPCA
LDD_BARCODE_UPCE
LDD_BARCODE_EAN8
LDD_BARCODE_EAN8_PLUS2
LDD_BARCODE_EAN8_PLUS5
LDD_BARCODE_EAN13
LDD_BARCODE_EAN13_PLUS2
LDD_BARCODE_EAN13_PLUS5
LDD_BARCODE_PATCH
LDD_BARCODE_PDF417
Valor predeterminado:
LDD_BARCODE_CODE39
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
67
Nombre
Descripción
Tipo de datos
Información adicional
Direction
Dirección en la que
está colocado el
código de barras en
la página.
int
Este valor ayuda a acelerar el
reconocimiento de códigos de barras
y se puede utilizar para evitar que se
reconozcan códigos de barras en una
dirección distinta. Las opciones de
inclinación indican que el código de
barras está en esa dirección pero en
un ángulo de más de 15 grados.
(LDD constant)
Valores válidos:
LDD_BCDIR_HORIZ
LDD_BCDIR_HORIZ_SKEW
LDD_BCDIR_VERT
LDD_BCDIR_VERT_SKEW
LDD_BCDIR_ANY
Valor predeterminado:
LDD_BCDIR_HORIZ
Quality
Calidad de la
imagen que
contiene el código
de barras.
int
(LDD constant)
Este valor ayuda a acelerar el
reconocimiento de códigos de barras
mediante la activación del algoritmo
adecuado.
Valores válidos:
LDD_BCQUALITY_EXCELLENT
LDD_BCQUALITY_GOOD
LDD_BCQUALITY_FAIR
LDD_BCQUALITY_POOR
Valor predeterminado:
LDD_BCQUALITY_GOOD
Fixed
Especifica si el valor
de la longitud se
trata como un valor
mínimo o exacto.
bool
Si se define en TRUE, el valor de la
longitud se trata como un valor exacto,
si se define en FALSE, el valor de la
longitud se trata como un valor
mínimo. Si la longitud es cero, el valor
se ignora.
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
68
Nombre
Descripción
Tipo de datos
Length
Longitud prevista de int
los datos del código
de barras.
Información adicional
Si se define en cero (0), cualquier
longitud es aceptable.
Si se define en un valor mayor que
cero y Fixed se define en FALSE, se
trata de la longitud mínima que deben
tener los datos del código de barras.
Si se define en un valor mayor que
cero y Fixed se define en TRUE, se
trata de la longitud exacta que deben
tener los datos del código de barras.
Si no se encuentra un código de
barras de la longitud mínima o exacta,
se produce un error en la acción.
Si el tipo de código de barras
especificado requiere una
determinada longitud para dicho tipo,
este campo se ignora.
Valor predeterminado:
0
PageNumber
Página del
documento de
entrada en el que
se debe buscar.
int
Se puede utilizar un valor de cero para
la última página.
Valor predeterminado:
1
WholePage
Especifica si se
busca el código de
barras en toda la
página.
bool
Si se define en TRUE, se devuelve
el primer código de barras del tipo
especificado (y longitud, si se indica).
Si se define en FALSE, sólo se busca
en el área especificada.
Valor predeterminado:
TRUE
Left
Especifica (en
píxeles) el lado
izquierdo del área
en que se buscará.
Int
El valor sólo se utiliza cuando
WholePage está definido en FALSE.
Valor predeterminado:
0
Top
Especifica (en
píxeles) el lado
superior del área en
que se buscará.
bool
El valor sólo se utiliza cuando
WholePage está definido en FALSE.
Valor predeterminado:
0
Right
Especifica (en
píxeles) el lado
derecho del área en
que se buscará.
string
El valor sólo se utiliza cuando
WholePage está definido en FALSE.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
69
Nombre
Descripción
Tipo de datos
Información adicional
Bottom
Especifica (en
píxeles) el lado
inferior del área en
que se buscará.
int (LDD Define)
El valor sólo se utiliza cuando
WholePage está definido en FALSE.
Valor predeterminado:
0
Results
Contiene el valor de
los datos del código
de barras.
string
La propiedad sólo está disponible
después de llamar al método Go. Si no
se encuentra ningún código de barras,
será una cadena vacía.
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Utilice este método para que la acción busque el
código de barras basándose en las propiedades
que se han definido. Se devuelve TRUE si se
encuentra un código de barras; de lo contrario,
se devuelve FALSE.
Parámetros:
Ninguno
Devuelve:
Un valor bool que indica si el código de barras
se ha leído correcta o incorrectamente.
void Reset()
Borra todas las propiedades y las restablece
a su valor predeterminado.
Parámetros:
Ninguno
Devuelve:
Nada
Objetos de acción
70
Notas:
•
Utilice la propiedad PageNumber para especificar la página de la que se leerá un código de barras.
Para leer un código de barras de varias páginas, utilice la acción BarcodeRead varias veces.
•
Para obtener los mejores resultados, utilice una imagen monocroma con esta acción. De este modo
se permite una mejor detección de los espacios dentro de un código de barras, lo que da como
resultado una mayor precisión. Las imágenes que son demasiado oscuras reducen la precisión
de la lectura de códigos de barras. Se recomiendan perfiles con un valor de oscuridad 3 o menor.
•
Normalmente, una resolución de digitalización de 300 puntos por pulgada (ppp) proporciona buenos
resultados. No se recomienda una resolución mayor que 600 ppp.
•
Si sólo se va a buscar un área específica de una página, defina WholePage en FALSE. Por ejemplo,
puede digitalizar facturas, leer el número de factura de un código de barras situado en la esquina
derecha y utilizar dicho número de factura como nombre de archivo para almacenar la factura.
•
Los valores de Right, Left, Top y Bottom dependen de la resolución de digitalización utilizada para
adquirir el documento. Determine la resolución de digitalización necesaria, determine las posiciones
de píxeles necesarias para delimitar el área y, a continuación, utilice la misma resolución de
digitalización para todos los perfiles que usan el script.
Objetos de acción
71
BarcodeWrite (Códigos de barras: escribir)
Objetivo: escribir uno o varios códigos de barras de un determinado tipo en una sola página.
Para escribir códigos de barras de distintos formatos en una página, esta acción se debe utilizar
varias veces.
Grupo de instalación: CD de código de barras
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Text
Texto que se va a
codificar en el código
de barras.
string
La mayoría de los códigos de barras
tienen tipos de caracteres específicos
y/o longitudes que se deben respetar.
Para obtener más información sobre los
distintos tipos de códigos de barras,
consulte Referencia de códigos de
barras en la página 230.
Output
Documento en el que
se escribe la salida
de la acción.
doc
La propiedad sólo está disponible
después de llamar al método Go.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
72
Nombre
Descripción
Tipo de datos
Información adicional
Type
Tipo de código de
barras que se
generará.
int
Valores válidos:
(LDD Constant) LDD_BARCODE_CODE39
LDD_BARCODE_CODE39_CHK
LDD_BARCODE_CODE93
LDD_BARCODE_CODABAR
LDD_BARCODE_CODE128
LDD_BARCODE_UCC128
LDD_BARCODE_C25_INDUSTRIAL
LDD_BARCODE_C25_MATRIX
LDD_BARCODE_C25_DATALOGIC
LDD_BARCODE_C25_AIRLINE
LDD_BARCODE_ITF
LDD_BARCODE_ITF_CHK
LDD_BARCODE_UPCA
LDD_BARCODE_UPCE
LDD_BARCODE_EAN8
LDD_BARCODE_EAN8_PLUS2
LDD_BARCODE_EAN8_PLUS5
LDD_BARCODE_EAN13
LDD_BARCODE_EAN13_PLUS2
LDD_BARCODE_EAN13_PLUS5
LDD_BARCODE_PDF417
Valor predeterminado:
LDD_BARCODE_CODE39
Resolution
Resolución de la
imagen que se
generará.
int (LDD
constant)
Esta resolución debe coincidir con
la de la imagen en la que se combinará
el código de barras posteriormente.
Valores válidos:
LDD_RESOLUTION_300
LDD_RESOLUTION_600
Valor predeterminado:
LDD_RESOLUTION_300
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
73
Nombre
Descripción
Tipo de datos
Información adicional
Direction
Dirección del código
de barras que se va
a generar.
int (LDD
constant)
Valores válidos:
LDD_BCDIRECTION_HORIZ
LDD_BCDIRECTION_VERTUP
LDD_BCDIRECTION_VERTDOWN
Valor predeterminado:
LDD_BCDIRECTION_HORIZ
Height
int
Altura del código
de barras que se
va a generar en
milímetros.
Valores válidos:
1–50
Valor predeterminado:
10
TextJustify
int (LDD
constant)
Controla cómo se
alinea el texto en
relación al código
de barras.
Este valor se ignora si la presentación
de texto está definida en Ninguno.
Valores válidos:
LDD_BCJUSTIFY_LEFT
LDD_BCJUSTIFY_CENTER
LDD_BCJUSTIFY_RIGHT
Valor predeterminado:
LDD_BCJUSTIFY_CENTER
TextDisplay
Controla dónde
se presenta el texto
(si lo hubiera) en
relación al código
de barras.
int (LDD
constant)
Valores válidos:
LDD_BCDISPLAY_NONE
LDD_BCDISPLAY_HALFEMBED
LDD_BCDISPLAY_EMBED
LDD_BCDISPLAY_UNDER
LDD_BCDISPLAY_ABOVE
Valor predeterminado:
LDD_BCDISPLAY_UNDER
TextSize
Especifica el tamaño
de fuente que se
utilizará para el texto.
int
Este valor especifica el tamaño de
fuente (en puntos) que se utilizará para
el texto. Si se define en cero, la fuente
cambia automáticamente de tamaño
para ajustarse a la anchura del código
de barras. Este valor se ignora si la
presentación de texto está definida
en Ninguno.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
74
Métodos
Sintaxis
Descripción
bool Go()
Utilice este método para que la acción genere el
código de barras basándose en las propiedades
que se han definido. Se devuelve TRUE si el
código de barras se genera correctamente; de
lo contrario, se devuelve FALSE.
Parámetros:
Ninguno
Devuelve:
Un valor bool que indica si el código de barras
se ha generado correcta o incorrectamente.
void Reset()
Borra todas las propiedades y las restablece
a su valor predeterminado.
Parámetros:
Ninguno
Devuelve:
Nada
Notas:
•
La resolución del código de barras que se va a generar debe coincidir con la de la imagen en la que
se combinará.
•
Esta acción genera un mapa de bits en blanco y negro. La salida de esta acción se puede pasar como
MergeFile en la acción ImageMerge para colocar el código de barras encima de una imagen.
Objetos de acción
75
Ejemplo
En este ejemplo, la impresora multifunción tiene activado el seguimiento de trabajos y el script
utilizará el número de cuenta para generar un código de barras. El código de barras se agregará
a la esquina inferior izquierda de la primera página del documento digitalizado. A continuación, se
guardará en un archivo para poder recuperarlo posteriormente. Debido a que el código de barras que
se va a generar tiene 300 ppp, el perfil de digitalización del script también se debe definir en 300 ppp.
with BarcodeWrite
.Text = original.useracct
.Type = LDD_BARCODE_CODE39
.Resolution = LDD_RESOLUTION_300
.Direction = LDD_BCDIRECTION_HORIZ
.Height = 10
.TextDisplay = LDD_BCDISPLAY_UNDER
.TextJustify = LDD_BCJUSTIFY_CENTER
.TextSize = 0
.Go()
endwith
// Convierte el mapa de bits generado por la acción BarcodeWrite
// en un formato PNG; se obtienen mejores resultados con la
// acción ImageMerge.
with ConvertImageFormat
.input = BarcodeWrite.output
.format = LDD_IMGFORMAT_PNG
.colordepth = LDD_IMGDEPTH_BW
.AllPages = TRUE
.Go()
endwith
with ImageMerge
.Input = ConvertImageFormat.output
.ImageFile = BarcodeWrite.output
.Position = LDD_IMGMERGEPOS_BOTTOMLEFT
.Offset = 20
.AllPages = FALSE
.StartPage = 1
.EndPage = 1
.Go()
endwith
with SaveToFile
.Input = ImageMerge.output
.Path = "c:\invoices\invoice.tif"
.AppendTimestamp = TRUE
.Go()
endwith
Objetos de acción
76
ConvertImageFormat (Imágenes: cambiar formato)
Objetivo: convierte uno o varios archivos de imagen en el formato de archivo especificado.
Para convertir una imagen a formato PostScript o PDF, utilice la acción ConvertToDocument.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen
de la acción.
doc
Debe estar en formato de imagen
o PDF.
Output
Documento en el que
se escribe la salida de
esta acción.
doc
La salida está en el formato
especificado.
Format
Formato de salida
de la conversión.
int
(LDD Constant)
Valores válidos:
LDD_IMGFORMAT_TIF
LDD_IMGFORMAT_TIFG3
LDD_IMGFORMAT_TIFG4
LDD_IMGFORMAT_TIFPB
LDD_IMGFORMAT_BMP
LDD_IMGFORMAT_JPG
LDD_IMGFORMAT_PJPG
LDD_IMGFORMAT_PCX
LDD_IMGFORMAT_DCX
LDD_IMGFORMAT_PNG
Valor predeterminado:
LDD_IMGFORMAT_TIF
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
77
Nombre
Descripción
Tipo de datos
Información adicional
ColorDepth
Tipo de la imagen en
color de salida.
int
(LDD Constant)
Valor válido:
LDD_IMGDEPTH_BW:
Blanco y negro
LDD_IMGDEPTH_4C:
Color de 4 bits
LDD_IMGDEPTH_8C:
Color de 8 bits
LDD_IMGDEPTH_8G:
Escala de grises de 8 bits
LDD_IMGDEPTH_24C:
Color de 24 bits
LDD_IMGDEPTH_24G:
Escala de grises de 24 bits
Valor predeterminado:
LDD_IMGDEPTH_BW
JPEGQuality
AllPages
StartPage
Especifica la cantidad
de compresión JPEG
que se utilizará.
Cuanto mayor sea el
número, mejor será la
calidad pero el archivo
tendrá mayor tamaño.
int
Valor válido:
5–95
Valor predeterminado:
95
Convierte todas las
bool
páginas del
documento de entrada.
Valor predeterminado:
Primera página
a convertir.
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
int
TRUE
Valor predeterminado:
0
EndPage
Última página
a convertir.
int
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
El valor 0 indica la última página
del archivo.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
78
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Profundidades de color predeterminadas
Si la profundidad de color del archivo de salida especificada en el script no es válida, la acción
selecciona un valor predeterminado adecuado para dicho formato y termina la conversión. En la
siguiente tabla se enumera la profundidad de color predeterminada para los distintos formatos
de imagen.
Formato de imagen
Profundidad de color predeterminada
PostScript (*.ps)
Escala de grises de 8 bits
TIFF Grupo 4 (*.tif)
Blanco y negro
TIFF Grupo 3 (*.tif)
Blanco y negro
TIFF Bits empaquetados (*.tif)
Color de 8 bits
TIFF Sin comprimir (*.tif)
Color de 8 bits
Mapa de bits (*.bmp)
Color de 8 bits
PCX de Windows (*.pcx)
Color de 8 bits
DCX de Windows (*.dcx)
Color de 8 bits
JPEG (*.jpg)
Color de 24 bits
JPEG progresivo (*.jpg)
Color de 24 bits
PNG (*.png)
Color de 8 bits
PDF (*.pdf)
Color de 8 bits
Formatos de imagen multipágina
Los formatos de imagen TIFF y DCX pueden contener varias páginas en un solo archivo. Todos los
demás formatos de imagen sólo pueden contener una página por archivo. Si convierte una imagen
TIFF o DCX con varias páginas a un formato que sólo puede contener una página por archivo, el
resultado será un nuevo archivo por cada página del archivo multipágina original.
Objetos de acción
79
Formatos de conversión válidos
Tipo de archivo
Conversión válida
Mapa de bits
Blanco y negro
Color de 4 bits
Escala de grises de 8 bits
Color de 8 bits
Escala de grises de 24 bits
Color de 24 bits
JPG
Escala de grises de 8 bits
Color de 24 bits
TIFF (Sin comprimir)
Blanco y negro
Color de 4 bits
Escala de grises de 8 bits
Color de 8 bits
Escala de grises de 24 bits
Color de 24 bits
TIFF (Bits empaquetados)
Blanco y negro
Color de 4 bits
Escala de grises de 8 bits
Color de 8 bits
Escala de grises de 24 bits
Color de 24 bits
TIFF (Grupo 3)
Blanco y negro
TIFF (Grupo 4)
Blanco y negro
PCX
Blanco y negro
Color de 4 bits
Escala de grises de 8 bits
Color de 8 bits
Escala de grises de 24 bits
Color de 24 bits
DCX
Blanco y negro
Color de 4 bits
Escala de grises de 8 bits
Color de 8 bits
Escala de grises de 24 bits
Color de 24 bits
Objetos de acción
80
Tipo de archivo
Conversión válida
PJPEG
Escala de grises de 8 bits
Color de 24 bits
PNG
Blanco y negro
Color de 4 bits
Escala de grises de 8 bits
Color de 8 bits
Escala de grises de 24 bits
Color de 24 bits
Objetos de acción
81
ConvertToDocument (Imágenes: convertir a Postscript
o imagen PDF)
Objetivo: convierte uno o varios archivos de imagen al formato de documento PDF o PostScript.
Los archivos PDF generados son únicamente imágenes; no se puede realizar búsquedas en ellos.
No es lo mismo que utilizar la acción ImageToPDF, que utiliza un motor OCR para generar archivos
PDF en los que se pueden realizar búsquedas.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
Input
Documento origen de la
acción.
doc
Output
Documento en el que se
escribe la salida de la acción.
doc
Format
Formato de salida de la
conversión. La profundidad
de color de la salida no se
cambia.
int (LDD
constant)
Debe estar en formato de
imagen.
Valores válidos:
LDD_DOCFORMAT_PS
LDD_DOCFORMAT_PDF
Valor predeterminado:
LDD_DOCFORMAT_PDF
PaperSize
Tamaño del papel que se
utilizará para la salida.
int (LDD
Constant)
Valores válidos:
LDD_PAPERSIZE_11X17
LDD_PAPERSIZE_A3
LDD_PAPERSIZE_A4
LDD_PAPERSIZE_A5
LDD_PAPERSIZE_EXECUTIVE
LDD_PAPERSIZE_FOLIO
LDD_PAPERSIZE_JISB4
LDD_PAPERSIZE_JISB5
LDD_PAPERSIZE_LEGAL
LDD_PAPERSIZE_LETTER
LDD_PAPERSIZE_STATEMENT
Valor predeterminado:
LDD_PAPERSIZE_LETTER
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
82
Nombre
Descripción
Tipo de datos Información adicional
Orientation
Orientación del tamaño del
papel de la salida.
int (LDD
constant)
Si se define en automático, la
orientación del papel de salida se
definirá para que coincida con la
de la imagen de entrada.
Valores válidos:
LDD_ORIENTATION_AUTO
LDD_ORIENTATION_PORTRAIT
LDD_ORIENTATION_LANDSCAPE
Valor predeterminado:
LDD_ORIENTATION_AUTO
PSFitToPage
Indica si la imagen se debe
escalar para ajustarse a la
página completa o se debe
mantener su tamaño real.
bool
Este valor sólo se utiliza en las
conversiones a PostScript.
Valor predeterminado:
FALSE
AllPages
Especifica si se deben
convertir todas las páginas
del documento de entrada.
bool
Si se define en FALSE, en la
salida sólo aparecerán las
páginas especificadas.
Valor predeterminado:
TRUE
StartPage
Página en la que empezará
la conversión.
int
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
Valor predeterminado:
0
EndPage
Página en la que terminará
la conversión.
int
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
El valor 0 indica la última página
del archivo.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
83
DatabaseNotes (Groupware: introducir)
Objetivo: agrega una entrada en la base de datos de Lotus Notes especificada en el servidor Notes
indicado. Utiliza un formulario predefinido. Se admiten los documentos que tienen varios anexos.
Grupo de instalación: módulo de Lotus Notes
Requisitos previos:
•
El cliente de Lotus Notes debe estar instalado en Document Server para que esta acción utilice las
funciones de Notes. El cliente de Notes proporciona la seguridad y los valores de Notes subyacentes
para que Document Server interactúe con los servidores Notes.
•
Se debe proporcionar un archivo de cuenta/ID de usuario de Notes válido para que lo utilicen las
acciones de Notes en Document Server. Los administradores de Notes normalmente llaman a los ID
de Notes asociados a una aplicación de servidor (en vez de a una persona) un ID de aplicación.
•
Si el archivo de ID que utiliza el cliente de Notes tiene una contraseña, asegúrese de definir la
propiedad de contraseña (password) en el script. (La propiedad se puede definir mediante un valor
local en el script; esto provocará que se pregunte la contraseña cuando se cargue el script mediante
Server Manager.) Si no se proporciona la contraseña, se produce un error en la acción.
Propiedades
Nombre
Descripción
Tipo de datos Información adicional
Password
Contraseña del archivo
de ID que utiliza el
cliente de Notes.
string
Se debe definir en el script o
mediante un valor local si el archivo
de ID utiliza una contraseña. De
no hacerlo, se producirá un error en
la acción.
Server
Nombre del servidor
que aloja la base de
datos.
string
Si se deja en blanco, el valor
predeterminado es el equipo local.
Database
Nombre de la base de
datos de Notes que se
utilizará.
string
El nombre de la base de datos es el
nombre de archivo real de la base
de datos que se utilizará y es
relativo al directorio de datos de
Notes en el servidor especificado.
Form
Nombre del formulario
de la base de datos de
Notes que se utilizará.
string
Si se deja en blanco, el valor
predeterminado es el formulario
predeterminado de la base
de datos.
ComputeWithForm
bool
Realiza cálculos,
valida campos y
rellena valores
predeterminados según
lo especificado en el
formulario de Notes
cuando se inserta
un nuevo registro.
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
84
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para indicar
si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su valor
predeterminado.
bool AddField(string fieldname, int datatype, Define un campo de la base de datos de Notes de tipo
texto, texto enriquecido o fecha/hora en el valor de
string value)
cadena especificado. Se produce un error en este
método si el tipo de datos especificado no coincide con
el tipo del valor proporcionado.
Parámetros:
fieldname: nombre del campo de la base de datos de
Notes a definir; datatype: tipo del campo de la base de
datos de Notes; debe ser uno de las siguientes
constantes LDD:
LDD_NOTESDBFIELD_TEXT
LDD_NOTESDBFIELD_RICHTEXT
LDD_NOTESDBFIELD_DATETIME
valor: valor en el que se definirá el campo
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
bool AddField(string fieldname, int datatype, Define un campo de la base de datos de Notes de tipo
numérico en el valor de entero especificado. Se produce
int value)
un error en este método si el tipo de datos especificado
no coincide con el tipo del valor proporcionado.
Parámetros:
fieldname: nombre del campo de la base de datos de
Notes a definir; datatype: tipo del campo de la base de
datos de Notes; debe ser la siguiente constante LDD:
LDD_NOTESDBFIELD_NUMBER
valor: valor en el que se definirá el campo
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
bool AddField(string fieldname, int datatype, Agrega un anexo a un campo de la base de datos de
Notes de tipo texto o texto enriquecido. Se produce un
doc value)
error en este método si el tipo de datos especificado no
coincide con el tipo del valor proporcionado.
Parámetros:
fieldname: nombre del campo de la base de datos de Notes
a definir; datatype: debe ser la siguiente constante LDD:
LDD_NOTESDBFIELD_ATTACHMENT
valor: anexo que se agregará
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
Objetos de acción
85
Notas:
Cada vez que se llama al método Go(), se escribe un nuevo registro en la base de datos de Notes.
El registro contiene los campos especificados por las llamadas anteriores a AddField().
Si se escriben varios registros en la base de datos, llame al método Reset() para borrar todos
los campos. A continuación, llame a AddField() tantas veces como sea necesario, seguido de una
llamada al método Go() para insertar el registro en la base de datos.
Ejemplo:
Este script de ejemplo inserta el documento digitalizado originalmente en una base de datos
de Notes junto con una cadena que describe el contenido del documento.
with DatabaseNotes
.Server="Misdatos05/nuevo/contratos"
.ComputeWithForm = TRUE
.Database="Library\VendCntr.nsf"
.Form="Contratos digitalizados"
.ComputeWithForm=FALSE
.AddField("image",LDD_NOTESDBFIELD_ATTACHMENT,original.document)
.AddField("DocType",LDD_NOTESDBFIELD_TEXT,"Acuerdo principal")
.Go()
endwith
Objetos de acción
86
Acciones de Domino.Doc
Requisitos previos
•
Estas acciones sólo se han probado con Lotus Domino R5.0.4a; otros servidores R5 deben funcionar,
pero no se han probado específicamente. El servidor Domino debe incluir la instalación de servidor
Domino.Doc de la versión 3.0 o superior.
•
Se debe instalar un cliente de Lotus Notes certificado por Lotus como compatible con Domino.Doc en
el mismo equipo que Document Server.
•
Si Document Server se va a conectar a Dominio mediante autenticación de Notes, se requiere un ID
de Notes. Si el ID tiene una contraseña, Notes se puede configurar para compartir la contraseña con
complementos de otros fabricantes; esto no es obligatorio, pero es una opción.
•
Si Document Server se conectará a Domino mediante una conexión HTTP o HTTPS, debe haber un
navegador de Internet certificado por Lotus que funcione con Domino.
•
No importa el método que se utilice para conectar a Domino, Domino.Doc Desktop Enabler debe estar
instalado. Enabler se puede instalar visitando una base de datos de Domino.Doc con capacidad Web
con un navegador y seleccionando "Primeros pasos" en la página de inicio de la biblioteca.
Objetos de acción
87
DominoDocCheckIn (EDMS: introducir)
Objetivo: inserta uno o varios documentos con metadatos asociados en Lotus Domino.Docs.
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento que
se introducirá.
Doc
Cada archivo del documento se introduce
por separado. La etiqueta de cada archivo
del documento se utiliza para generar los
títulos de documento. Si hay archivos que
tengan la misma etiqueta, se añade un
cualificador "(x de y)" a cada título, donde
x e y indican los índices de base 1 de los
archivos con la misma etiqueta de archivo.
Username
Especifica el usuario
con el que se
conectará.
String
Si se conecta mediante Notes, se debe
quedar en blanco. Se requiere si se
conecta mediante HTTP o HTTPS.
Password
Especifica la
contraseña del
usuario.
String
Si se conecta mediante Notes y la
contraseña es compartida o no hay
contraseña, puede estar en blanco. En los
demás casos, se trata de la contraseña
del usuario.
Library
Especifica la
biblioteca de
Domino.Doc que
se utilizará.
String
Consulte Conexión a Domino.Doc en la
página 98 para obtener más información.
Room
Especifica la sala de
Domino.Doc que se
utilizará.
String
Consulte Desplazamiento por una
biblioteca de Domino.Doc en la
página 98 para obtener más información
sobre estos cuatro valores.
Cabinet
Especifica el mueble
de Domino.Doc que
se utilizará.
String
Consulte Conexión a Domino.Doc en la
página 98 para obtener más información.
Category
Especifica la
categoría de
Domino.Doc que
se utilizará.
String
Consulte Conexión a Domino.Doc en la
página 98 para obtener más información.
Binder
Especifica el
clasificador de
Domino.Doc que
se utilizará.
String
Consulte Conexión a Domino.Doc en la
página 98 para obtener más información.
Description
Descripción que se
asociará a todas las
versiones de este
documento.
String
Se utiliza para la versión recién creada
y todas las operaciones posteriores.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
88
Nombre
Descripción
Tipo de datos
Información adicional
Checkinlevel
Especifica si el
documento que se
está introduciendo es
una versión principal
(1.0) o un borrador
(0.1).
int (LDD Constant)
Valores:
Comment
Comentario que sólo
se aplica a esta
versión inicial.
String
Este campo normalmente se actualiza
de forma automática a medida que el
documento pasa por los procesos de flujo
de trabajo de Domino.Doc, como revisión,
aprobación y auditoría.
DocumentType
Especifica el tipo del
documento que se
introducirá.
String
De forma predeterminada está vacío (sin
tipo). El tipo de documento se denomina
"perfil" en Domino.Doc y especifica los
campos de metadatos que están
disponibles para este documento. El tipo
de documento debe ser uno de los tipos
válidos admitidos al crear el mueble de
archivos. En el tipo de documento se
distingue entre mayúsculas y minúsculas.
Si se utilizan las características de flujo
de trabajo de Domino.Doc, como la
automatización del ciclo de vida de los
documentos, DocumentType también
especifica el flujo de trabajo que se
aplicará automáticamente al documento
introducido.
stringarray
Después de llamar al método Go, contiene
una matriz de cadenas que corresponden
al identificador de Domino único asignado
a cada archivo que se ha introducido.
DocumentList
LDD_DOMDOC_INLEVEL_VERSION
LDD_DOMDOC_INLEVEL_DRAFT
Valor predeterminado:
LDD_DOMDOC_INLEVEL_DRAFT
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
89
Métodos:
Sintaxis
Descripción
bool Go()
Cada archivo del documento de entrada se introduce de forma
independiente con los mismos valores de seguridad, perfil
y metadatos.
Parámetros:
Ninguno
Devuelve:
TRUE: todos los archivos se han introducido correctamente; la
propiedad DocumentList se rellena con la lista de los identificadores
de Domino únicos asignados a cada archivo.
FALSE: no se ha podido inicializar la API, se ha especificado una
biblioteca no válida, se ha indicado un nombre de usuario o contraseña
no válido, el documento de entrada estaba vacío, se ha indicado un
valor de propiedad no válido. Consulte el archivo de registro para
obtener más información sobre el error exacto.
void Reset()
Borra toda la información definida anteriormente para esta acción
y devuelve todas las propiedades a su valor predeterminado.
Parámetros:
Ninguno
Devuelve:
Nada
void SetMetadata(string key,
string value)
Define un par clave/valor de metadatos que se utilizará durante el
siguiente uso del método Go. Las claves de metadatos válidas se
determinan por el tipo de documento en el diseño de perfil de
documento. Esta función se puede llamar tantas veces como sea
necesario para definir todos los elementos de metadatos de un
documento de entrada.
Parámetros:
key: nombre de la clave que se definirá
value: valor que se utilizará para la clave
Devuelve:
Nada
void ClearMetadata()
Elimina todos los pares de clave/valor de metadatos almacenados
actualmente en este objeto. Resulta de mayor utilidad si el objeto
DominoDocCheckIn se va a utilizar varias veces en el mismo script.
Parámetros:
Ninguno
Devuelve:
Nada
Objetos de acción
90
Sintaxis
Descripción
void SetSecurityLevel(string
name, int level)
Especifica el nivel de acceso de un determinado usuario a este
documento. Si no se llama a este método, el documento utilizará
los mismos valores de seguridad que su clasificador principal. Este
método se puede llamar tantas veces como sea necesario para
configurar el nivel de acceso de cada usuario. Los usuarios para
los que no se llame este método recibirán el nivel de acceso
predeterminado.
Parámetros:
name: nombre completo de un usuario que tenga derechos de acceso
para participar en este mueble
level: los derechos de acceso que se concederán al usuario
especificado para el documento que se va a introducir; debe ser uno
de los valores siguientes:
LDD_DOMDOC_SECURITY_NOACCESS
LDD_DOMDOC_SECURITY_READER
LDD_DOMDOC_SECURITY_EDITOR
LDD_DOMDOC_SECURITY_MANAGER
Devuelve:
Nada
void ClearSecurityLevel()
Elimina todos los niveles de acceso almacenados actualmente
en este objeto. Resulta de mayor utilidad si el objeto
DominoDocCheckIn se va a utilizar varias veces en el mismo script.
Parámetros:
Ninguno
Devuelve:
Nada
Para introducir el documento digitalizado en Domino.Doc
En este ejemplo se supone que el documento digitalizado es un único archivo. Es el ejemplo
completo más pequeño del uso de la acción CheckIn y no incluye ninguna opción. Normalmente,
el ID de documento devuelto por el método se almacenará en otro lugar para su uso posterior
(por ejemplo, incluyéndolo en un e-mail).
doc d1=original.document// documento que se introducirá
string id// ubicación en la que se almacena el ID de documento
with DominoDocCheckin
.input=d1
.library="notes://MyServer/DocumentLibrary.nsf"
.cabinet="Archivos digitalizados"
.binder="LDD"
.description="Enviado desde "+original.userip
.comment="Insertado por LDD"
.Go()
id=.documentlist[1]
endwith
Objetos de acción
91
Metadatos de introducción y opciones de seguridad adicionales
En este ejemplo, el documento introducido se utilizará como informe de estado para el proyecto
actual de Juan García. Lamentablemente, Juan García sólo puede leer documentos del clasificador
Status Reports, por lo que se anulará la seguridad para permitirle editar éste. Se etiqueta el
documento y se agregan metadatos adicionales.
doc d1=original.document// documento que se introducirá
d1.SetFileLabelAll("Dispositivo: Estado actual")
with DominoDocCheckin
.input=d1
.library="notes://MyServer/DocumentLibrary.nsf"
.cabinet="Archivos de proyectos"
.binder="Informes de estado"
.description="Enviado desde "+original.userip
.comment="Insertado por LDD"
.SetSecurityLevel("Juan García/MiDominioNotes",LDD_DOMDOC_SECURITY_EDITOR)
.documenttype="Documento genérico"
.SetMetadata("Descripción","Proyecto: Director del dispositivo: García")
.SetMetadata("Fecha",original.usertime.AsAlphanumeric())
.Go()
endwith
Objetos de acción
92
DominoDocRetrieve (EDMS: recuperar)
Objetivo: recupera uno o varios documentos y sus descripciones y metadatos asociados de una
biblioteca de Lotus Domino.Docs basándose en criterios de búsqueda.
Detalles: los documentos se recuperan de Domino.Doc utilizando los ID de documento únicos
asignados por Domino al introducirlos. Para utilizar esta acción, primero se deben definir la conexión,
el desplazamiento y los criterios de búsqueda. A continuación, se llama al método Query(); si se
realiza correctamente, la propiedad DocumentList devuelve una matriz de ID de documento de todos
los documentos coincidentes. Después, la propiedad DocumentID se define en uno de estos ID y se
llama al método Go para recuperar el documento y su descripción y metadatos asociados.
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
Username
Especifica el
usuario con el que
se conectará.
string
Si se conecta mediante Notes, se debe quedar en
blanco. Si se conecta mediante HTTP o HTTPS, el
nombre de usuario con el que se conectará.
Password
Especifica la
contraseña del
usuario.
string
Si se conecta mediante Notes y la contraseña es
compartida o no hay contraseña, puede estar en
blanco.
Library
Biblioteca de
Domino.Doc que
se utilizará.
string
Consulte Conexión a Domino.Doc en la
página 98.
Room
string
Consulte Desplazamiento por una biblioteca de
Domino.Doc en la página 98.
Cabinet
string
Category
string
Binder
string
Searchmethod
Especifica el tipo
de consulta que se
realizará.
int (LDD
constant)
Valores válidos:
LDD_DOMDOC_SMETHOD_NONE:
desplazarse a un clasificador y seleccionar por título
LDD_DOMDOC_SMETHOD_FORMULA:
desplazarse opcionalmente a un mueble, utilizar
una fórmula LotusScript
LDD_DOMDOC_SMETHOD_FAVS:
sin desplazamiento, seleccionar por título en los
marcadores Web favoritos
LDD_DOMDOC_SMETHOD_RECENT:
sin desplazamiento, seleccionar por título en los
marcadores Web editados recientemente
LDD_DOMDOC_SMETHOD_OUT:
sin desplazamiento, seleccionar por título en los
marcadores Web recuperados
Valor predeterminado:
LDD_DOMDOC_SMETHOD_NONE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
93
Nombre
Descripción
Tipo de datos Información adicional
Criteria
Si se ha
especificado el
método de
búsqueda por
fórmula, esta
propiedad se utiliza
para especificar los
criterios de
búsqueda de
LotusScript o la
cualificación de
búsqueda de texto
completo.
string
Si se ha
especificado el
método de
búsqueda por
fórmula, esta
propiedad indica
cómo debe
funcionar la
búsqueda de texto
completo.
int (LDD
Constant)
Fulltextoptions
La búsqueda de texto completo sólo se puede
utilizar si se ha activado para esta biblioteca.
Ningún otro método de búsqueda utiliza este
valor.
Valores:
LDD_DOMDOC_FULLTEXT_NONE: se requiere
coincidencia exacta o no se utiliza la búsqueda de
texto completo.
LDD_DOMDOC_FULLTEXT_STEMWORDS:
utilizar estas palabras base para la coincidencia
(las coincidencias incluyen sufijos como ‘ado’,
‘endo’ o ‘s’)
LDD_DOMDOC_FULLTEXT_THESAURUS: las
palabras con significado similar se tratan como
coincidentes
LDD_DOMDOC_FULLTEXT_BOTH: se aplican
la flexión y los sinónimos.
Valor predeterminado:
LDD_DOMDOC_FULLTEXT_NONE
Sortoptions
Si se ha
especificado el
método de
búsqueda por
fórmula, esta
propiedad
especifica el orden
en el que los
documentos
coincidentes se
devuelven en la
lista de
documentos.
int (LDD
Constant)
Valores:
LDD_DOMDOC_SORT_NONE: los documentos
se devuelven en orden 'natural'
LDD_DOMDOC_SORT_RELEVANCE: si se
incluye ponderación en la cadena de búsqueda de
LotusScript, las coincidencias más próximas se
enumeran en primer lugar
LDD_DOMDOC_SORT_DATEDESCEND: los
documentos se enumeran desde el más reciente
LDD_DOMDOC_SORT_DATEASCEND: los
documentos se enumeran desde el más antiguo
Valor predeterminado:
LDD_DOMDOC_SORT_NONE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
94
Nombre
Descripción
Whichdocument Después de llamar
al método Query,
se crea una lista de
todos los
documentos
coincidentes. Si
se especifica esta
propiedad, se
busca en la lista
de documentos
coincidentes uno
cuyo título coincida
con este valor.
Tipo de datos Información adicional
string
Sólo debe haber una coincidencia; si no hay
ninguna coincidencia o hay varias, el método
Query devolverá FALSE. Si sólo hay una
coincidencia, dicho ID de documento será el único
que se devuelva en la propiedad DocumentList.
DocumentID
string
ID de documento
único del
documento que se
debe recuperar con
la siguiente llamada
al método Go.
Output
Último documento
que se ha
recuperado con el
método Go.
doc
Esta propiedad está vacía si no se ha recuperado
ningún documento correctamente.
DocumentType
Tipo de documento
(o perfil de
documento) del
último documento
que se ha
recuperado con
el método Go.
string
Es una cadena vacía si no se ha recuperado
ningún documento correctamente.
Description
Descripción del
último documento
que se ha
recuperado con
el método Go.
string
Es una cadena vacía si no se ha recuperado
ningún documento correctamente.
DocumentList
Esta matriz
contiene la lista de
los documentos
coincidentes según
los ha devuelto el
método Query().
Array
Esta matriz está vacía hasta que se llame al
método Query.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
95
Métodos:
Sintaxis
Descripción
bool Go()
Recupera el documento individual y único
especificado por la propiedad DocumentID.
Parámetros:
Ninguno
Devuelve:
TRUE: se ha encontrado el documento y ahora
está disponible en la propiedad output; el tipo de
documento, la descripción y los metadatos
también están disponibles ahora.
FALSE: no se ha podido encontrar el documento
void Reset()
Borra toda la información definida anteriormente
para esta acción y devuelve todas las
propiedades a su valor predeterminado.
Parámetros:
Ninguno
Devuelve:
Nada
Objetos de acción
96
Sintaxis
Descripción
bool Query()
Ejecuta la consulta de búsqueda especificada
por las propiedades searchmethod, criteria,
sortoptions, fulltextoptions y whichdocument.
Las consultas se desplazarán al mueble o
clasificador requerido si se especifica o si el
método de búsqueda los requiere.
Parámetros:
Ninguno
Devuelve:
TRUE: la consulta se ha realizado correctamente;
la lista de los ID de documento coincidentes está
ahora disponible en la propiedad DocumentList.
FALSE: la consulta no se ha realizado
correctamente; las causas posibles son: no se
ha podido conectar a la biblioteca especificada,
nombre de usuario o contraseña no válidos, no se
ha podido desplazar a la ubicación de biblioteca
especificada o valor de propiedad de búsqueda
no válido.
Si se ha podido ejecutar la consulta y no hay
ningún documento que cumpla los criterios de
búsqueda, el método seguirá devolviendo TRUE.
string GetMetadata(string key)
Obtiene el valor de la clave especificada para
el último documento recuperado con Go.
Parámetros:
key: clave de la que se devolverá el valor de los
metadatos
Devuelve:
El valor de la clave especificada para el último
documento recuperado. Este valor está
formateado según las especificaciones de
formato definido para dicho tipo de documento.
Si la clave especificada no existe, se devuelve
una cadena vacía.
Objetos de acción
97
Conexión a Domino.Doc
Cuando se utiliza una acción, ésta primero se debe conectar a una determinada biblioteca de
Domino.Doc para que pueda continuar con la función solicitada. Cada acción utiliza las propiedades
username, password y library para configurar la conexión. Domino.Doc admite tres métodos de conexión;
cada uno de ellos se describe a continuación junto con los valores necesarios para estas propiedades.
Cliente de Notes:
Este método conecta a Domino.Doc con el ID de usuario almacenado en el archivo de ID de
Notes local. En este caso, la propiedad username debe estar en blanco. La propiedad password
puede estar en blanco si el cliente de Notes se ha configurado para compartir su contraseña
con aplicaciones complementarias; de lo contrario, se debe utilizar la propiedad password para
especificarla explícitamente. La propiedad library debe empezar por "notes://" y, si es necesario,
se puede utilizar para acceder a servidores Notes jerárquicos. Los valores habituales son:
–
–
notes://MyServer/domdoc.nsf
notes://MyNotesServer/organization units/organization!!subdirectory/domdoc.nsf
HTTP o HTTPS:
Estos métodos se conectan a Domino.Doc como un usuario concreto y no están limitados
al ID de usuario del archivo de ID de Notes local. Las propiedades username y password se
deben suministrar utilizando el nombre completo tal como aparece en Nombre de Notes
y Libreta de direcciones, por ejemplo, "Juan García/DominioNotes". Los valores habituales
de la propiedad library son:
–
–
http://MyWebServer/domdoc.nsf
https://MySecureWebServer/domdoc.nsf
Desplazamiento por una biblioteca de Domino.Doc
Cada acción utiliza las propiedades room, cabinet, category y binder para desplazarse a una
determinada ubicación de la biblioteca de Domino.Doc. Las salas y las categorías son técnicas de
agrupación que se utilizan para facilitar el uso de la presentación gráfica de una biblioteca. Cada
mueble debe tener un número único, mientras que cada clasificador de un mueble debe tener un
nombre único. Por ejemplo, un mueble puede aparecer en varias salas o un clasificador puede
aparecer en varias categorías. Los clasificadores de muebles distintos pueden tener el mismo
nombre; los clasificadores del mismo mueble no pueden.
Sólo es necesario especificar los muebles y los clasificadores para encontrar la ubicación correcta
en la biblioteca. Las propiedades room y category se pueden utilizar para facilitar la ubicación de
determinados muebles o clasificadores (especialmente cuando se relaciona con lo que se muestra
en una pantalla de cliente). Al introducir documentos, se deben especificar un mueble y clasificador
únicos. Al recuperar documentos, sólo se tiene que especificar un mueble y un clasificador si el
método de búsqueda especificado lo requiere.
Nota: las categorías pueden estar anidadas. Las categorías anidadas se indican
mediante el uso de "/" como separador de ruta de acceso. Por ejemplo,
"Formularios/Médicos".
Objetos de acción
98
Recuperación de un ID de documento conocido
El ID de documento devuelto por el método de introducción identifica de forma única el documento
y se ha podido enviar en un e-mail o agregar a una página de confirmación. El siguiente script define
un campo de datos de usuario (userdata) de modo que, cuando se ejecute este script, se pueda
introducir y recuperar un ID de documento. El script continuará normalmente para imprimir o enviar
este documento.
doc d1
//documento recuperado
with DominoDocRetrieve
.library="notes://MyServer/DocumentLibrary.nsf"
.documentID=userdata.docid
.Go()
d1=.output
endwith
Búsqueda de archivos que cumplan un criterio específico
La organización anterior ha decidido etiquetar y clasificar los archivos de proyecto de un modo
coherente y ha decidido asegurarse de que todos los títulos de los documentos introducidos en
Domino.Doc incluyen el nombre de proyecto. El siguiente ejemplo busca todos los archivos
relacionados con el proyecto Dispositivo, los ordena desde el más reciente y los clasifica en un único
documento LDD que, por ejemplo, se puede entregar en un mensaje de e-mail.
doc dCollate //ubicación en la que se clasifican los archivos que coincidan
int iIndex
//índice de los documentos coincidentes
with DominoDocRetrieve
.library="notes://MyServer/DocumentLibrary.nsf"
.cabinet="Archivos de proyectos"
.searchmethod=LDD_DOMDOC_SMETHOD_FORMULA
.criteria='([Title]CONTAINS"Dispositivo")'
.sortoptions=LDD_DOMDOC_SORT_DATEDESCEND
.Query()
loop iIndex from 1 to .documentList.GetSize()
.documentID=.documentList[iIndex]
.Go()
dCollate.AddDocument(.output)
endloop
endwith
Objetos de acción
99
EmailExchange (E-mail)
Objetivo: envía un mensaje de e-mail a uno o varios destinatarios mediante un servidor Exchange.
Los destinatarios pueden ser personas o carpetas públicas de Exchange.
Grupo de instalación: módulo de Microsoft Exchange
Requisitos previos: hay varios requisitos previos para utilizar la acción EmailExchange:
•
Microsoft Outlook debe estar instalado en el mismo ordenador que Document Server.
Microsoft Outlook Express incluido con Internet Explorer no funciona.
•
Debe estar instalada la biblioteca MAPI.
Para verificarlo, compruebe la siguiente clave del registro:
HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows Messaging Subsystem
Los valores de las claves "CMC" y "MAPI" deben estar definidas en 1.
•
Necesita una cuenta de usuario válida en el servidor Exchange para conectarse. Si tiene instalado
Outlook, intente conectarse al servidor Exchange para verificar si funciona.
•
Document Distributor debe conectarse como un usuario. Document Server es un servicio. Para la
acción EmailExchange, tiene que configurar el servicio para que se conecte con una cuenta de
usuario. La cuenta de usuario seleccionada debe tener una cuenta de e-mail de Exchange válida.
La cuenta de usuario debe tener acceso completo al ordenador host de Document Server.
Para configurar el servicio Document Server para conectarse como un usuario (debe
conectarse como administrador para realizar este procedimiento):
Windows NT:
1
Haga clic en Inicio Æ Configuración Æ Panel de control Æ Servicios.
2
Seleccione el servicio Lexmark Document Server y haga clic en Inicio.
3
Haga clic en Esta cuenta y seleccione el nombre del usuario que tiene los derechos
de acceso deseados. Escriba la contraseña del usuario y confirme.
4
Haga clic en Aceptar.
Nota: para que el servicio se conecte como el usuario especificado, debe detener e iniciar
el servicio Document Server o reiniciar el ordenador.
Windows 2000/XP:
1
Haga clic en Inicio Æ Configuración Æ Panel de control Æ Herramientas
administrativas Æ Servicios.
2
Haga doble clic en el servicio Lexmark Document Server.
3
Seleccione la ficha Iniciar sesión.
4
Haga clic en Esta cuenta y seleccione el nombre del usuario que tiene los derechos
de acceso deseados. Escriba la contraseña del usuario y confirme.
Objetos de acción
100
5
Haga clic en Aceptar.
Nota: para que el servicio se conecte como el usuario especificado, debe detener e iniciar
el servicio Document Server o reiniciar el ordenador.
Acerca de los perfiles de Exchange
Se requiere un "perfil" de usuario para que Document Distributor se conecte a Exchange. El perfil
especifica la dirección del servidor Exchange y el nombre del buzón de Exchange válido. Document
Distributor le crea un perfil de Exchange si el script suministra:
•
•
•
El nombre del perfil que desea crear.
La dirección del ordenador donde está instalado Exchange.
El nombre de un buzón de Exchange válido.
Si proporciona el nombre de un perfil que ya existe en el equipo de Document Distributor, éste
intenta conectarse a Exchange con dicho perfil. Si no se suministra ningún perfil, Document
Distributor busca el nombre de un perfil predeterminado en el registro del sistema. El nombre
de este perfil predeterminado (si existe) se encuentra en la siguiente clave del registro:
HKEY_CURRENT _USER\\Software\\Microsoft\\WindowsNT\\CurrentVersion\\Windows
Messaging Subsystem\\Profiles
Si no se especifica un nombre de perfil en el script y no existe ninguno predeterminado en el
sistema, Document Distributor genera un error.
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
To
Lista de las direcciones de
e-mail a las que se enviará
este mensaje.
string
Para especificar varios
destinatarios, sepárelos
con comas.
From
Dirección de e-mail del
remitente.
string
cc
Lista de las direcciones de
e-mail a las que se enviarán
copias.
string
Para especificar varios
destinatarios, sepárelos
con comas.
bcc
Lista de las direcciones de
e-mail a las que se enviarán
copias ocultas.
string
Para especificar varios
destinatarios, sepárelos
con comas.
Subject
Asunto del e-mail.
string
Message
Cadena de texto que se
utilizará como cuerpo del
mensaje.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
101
Nombre
Descripción
Tipo de datos
Información adicional
Attachments
Puede ser:
doc
Para adjuntar varios
archivos, cree una
variable de tipo doc y
llame al método AddFile()
del objeto doc para
agregarlos a dicho objeto
antes de utilizarlo aquí.
• Documento digitalizado
original
• Salida de una acción
anterior
Server
Dirección IP o nombre de
host DNS del servidor.
string
Incluya este valor si
desea que Document
Distributor cree un perfil.
Mailbox
Nombre del buzón
string
Incluya este valor si
desea que Document
Distributor cree un perfil.
ProfileName
Perfil que se utilizará
string
Este valor especifica el
nombre del nuevo perfil
que desea que Document
Distributor cree o puede
ser el nombre de un perfil
existente que desea que
Document Distributor
utilice. Si no se especifica
ningún nombre,
Document Distributor
busca un perfil
predeterminado en el
registro, Acerca de los
perfiles de Exchange en
la página 101.
Password
Contraseña para acceder al
servidor Exchange.
string
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Objetos de acción
102
EmailNotes (E-mail)
Objetivo: envía un mensaje de e-mail a uno o varios destinatarios mediante un servidor de correo
Lotus Notes.
Grupo de instalación: módulo de Lotus Notes
Requisitos previos:
•
El cliente de Lotus Notes debe estar instalado en Document Server para que esta acción utilice las
funciones de Notes. El cliente de Notes proporciona la seguridad y los valores de Notes subyacentes
para que Document Server interactúe con los servidores Notes.
•
Se debe proporcionar un archivo de cuenta/ID de usuario de Notes válido para que lo utilicen las
acciones de Notes en Document Server. Los administradores de Notes normalmente llaman a los ID
de Notes asociados a una aplicación de servidor (en vez de a una persona) un ID de aplicación.
•
Si el archivo de ID que utiliza el cliente de Notes tiene una contraseña, asegúrese de definir la
propiedad de contraseña (password) en el script. (La propiedad se puede definir mediante un valor
local en el script; esto provocará que se pregunte la contraseña cuando se cargue el script mediante
Server Manager.) Si no se proporciona la contraseña, se produce un error en la acción.
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
Password
Contraseña del archivo de
ID que utiliza el cliente de
Notes.
string
Se debe definir en el script o mediante
un valor local si el archivo de ID utiliza
una contraseña. De no hacerlo, se
producirá un error en la acción.
To
Lista de las direcciones de
e-mail a las que se enviará
este mensaje.
string
Para especificar varios destinatarios,
sepárelos con comas.
From
Dirección de e-mail del
remitente.
string
cc
Lista de las direcciones
de e-mail a las que se
enviarán copias.
string
Para especificar varios destinatarios,
sepárelos con comas.
bcc
Lista de las direcciones
de e-mail a las que se
enviarán copias ocultas.
string
Para especificar varios destinatarios,
sepárelos con comas.
Subject
Asunto del e-mail.
string
Message
Cadena de texto que se
utilizará como cuerpo del
mensaje.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
103
Nombre
Descripción
Tipo de datos Información adicional
Attachments
El anexo puede ser:
doc
Para adjuntar varios archivos, cree una
variable de tipo doc y llame al método
AddFile() del objeto doc para
agregarlos a dicho objeto antes de
utilizarlo aquí.
int
(LDD
Constant)
Valores de la propiedad:
• Documento digitalizado
original
• Salida de una acción
anterior
DeliveryPriority
Prioridad de la entrega
de e-mail.
LDD_PRIORITY_LOW
LDD_PRIORITY_NORMAL
LDD_PRIORITY_HIGH
Valor predeterminado:
LDD_PRIORITY_NORMAL
MailImportance
Importancia del e-mail.
int
(LDD
Constant)
Valores de la propiedad:
LDD_PRIORITY_LOW
LDD_PRIORITY_NORMAL
LDD_PRIORITY_HIGH
Valor predeterminado:
LDD_PRIORITY_NORMAL
MoodStamp
Moodstamp es opcional.
int
(LDD
Constant)
Valores de la propiedad:
LDD_MOODSTAMP_NORMAL
LDD_MOODSTAMP_PERSONAL
LDD_MOODSTAMP_CONFIDENTIAL
LDD_MOODSTAMP_PRIVATE
LDD_MOODSTAMP_THANKYOU
LDD_MOODSTAMP_URGENT
LDD_MOODSTAMP_GOODJOB
LDD_MOODSTAMP_JOKE
LDD_MOODSTAMP_FYI
LDD_MOODSTAMP_QUESTION
LDD_MOODSTAMP_REMINDER
Valor predeterminado:
LDD_MOODSTAMP_NORMAL
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
104
Nombre
Descripción
Tipo de datos Información adicional
DeliveryReport
Estado de entrega de la
nota.
int
(LDD
Constant)
Valores de la propiedad:
LDD_DELIVERYREPORT_CONFIRM
LDD_DELIVERYREPORT_FAILURE
LDD_DELIVERYREPORT_TRACEPATH
LDD_DELIVERYREPORT_NONE
Valor predeterminado:
LDD_DELIVERYREPORT_FAILURE
ReturnReceipt
bool
Si desea que se envíe
un acuse de recibo al
remitente.
TRUE si desea un acuse de recibo;
de lo contrario, FALSE.
Valor predeterminado:
FALSE
PreventCopying Impedir que se copie
la nota.
bool
TRUE para evitar la copia; de lo
contrario, FALSE.
Valor predeterminado:
FALSE
SaveSent
Indica si se debe guardar
una copia del mensaje en
la carpeta "Enviado".
bool
TRUE para guardar el mensaje; de lo
contrario, FALSE.
Valor predeterminado:
FALSE
ViewIcon
Icono que se mostrará
junto al mensaje de correo
en la bandeja de entrada
de un cliente de Notes.
int
Si se define en cero, se utilizará el
icono predeterminado basado en el
icono de tipo de mensaje. De lo
contrario, se puede definir cualquier ID
de icono de Notes válido y se anulará el
valor predeterminado.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Notas:
•
Las direcciones de e-mail pueden ser direcciones de Lotus Notes o direcciones de e-mail de Internet.
•
Lotus Notes no requiere valores para las propiedades To, From, cc o bcc. Sin embargo, un mensaje
debe suministrar un valor para una de estas propiedades como mínimo.
Objetos de acción
105
EmailSMTP (E-mail)
Objetivo: enviar un mensaje de e-mail a uno o varios destinatarios mediante el servidor SMTP
(Protocolo simple de transferencia de correo) especificado.
Grupo de instalación: módulo SMTP
Requisitos previos: esta acción sólo funcionará en servidores SMTP que no necesiten cifrado. Es
decir, si el servidor SMTP especificado necesita una conexión segura, esta acción no funcionará.
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
To
Lista de las direcciones
de e-mail a las que se
enviará este mensaje.
string
Para especificar varios destinatarios,
sepárelos con comas.
From
Dirección de e-mail del
remitente.
string
Algunos servidores SMTP requieren
que el campo From sea una dirección
válida que conozca el servidor SMTP
antes de direccionar correo.
cc
Lista de las direcciones
de e-mail a las que se
enviarán copias.
string
Para especificar varios destinatarios,
sepárelos con comas.
bcc
Lista de las direcciones
de e-mail a las que se
enviarán copias ocultas.
string
Para especificar varios destinatarios,
sepárelos con comas.
ReplyTo
Dirección a la que se
responderá si es distinta
del campo "From".
string
Por ejemplo, en el caso de una
secretaria que envíe los e-mails de
su jefe.
Sender
Dirección de e-mail al que
se enviarán los errores.
string
Subject
Asunto del mensaje.
string
Message
Cadena de texto que se
utilizará como cuerpo del
mensaje.
string
Server
Dirección IP o nombre
de host DNS del servidor
SMTP.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
106
Nombre
Descripción
Tipo de datos Información adicional
CharacterSet
Juego de caracteres que
se utilizará para enviar el
mensaje y el texto del
asunto.
int
(LDD
Constant)
Valores válidos:
LDD_SMTPCHARSET_US
LDD_SMTPCHARSET_WEUROPE
LDD_SMTPCHARSET_EEUROPE
LDD_SMTPCHARSET_SEUROPE
LDD_SMTPCHARSET_NEUROPE
LDD_SMTPCHARSET_CYRILLIC
LDD_SMTPCHARSET_ARABIC
LDD_SMTPCHARSET_GREEK
LDD_SMTPCHARSET_HEBREW
LDD_SMTPCHARSET_TURKISH
LDD_SMTPCHARSET_NORDIC
Valor predeterminado:
LDD_SMTPCHARSET_US
Attachments
doc
El anexo puede ser:
• Documento digitalizado
original
• Salida de una acción
anterior
Authentication
Determina el método de
autenticación que debe
utilizar LDD.
Para adjuntar varios archivos, cree una
variable de tipo doc y llame al método
AddFile() del objeto doc para agregarlos
a dicho objeto antes de utilizarlo aquí.
Valores válidos:
LDD_SMTPAUTH_NONE
LDD_SMTPAUTH_LOGIN
LDD_SMTPAUTH_PLAIN
LDD_SMTPAUTH_CRAMMD5
LDD_SMTPAUTH_DIGESTMD5
LDD_SMTPAUTH_AUTO
Valor predeterminado:
LDD_SMTPAUTH_AUTO
Realm
Dominio de conexión
concreto en un servidor
SMTP que comparte
varios dominios.
string
Sólo necesario en servidores SMTP
que comparten varios dominios.
User Name
Nombre de cuenta con
el que se conecta al
servidor SMTP.
string
Si no se especifica, el nombre se deriva
de la dirección del remitente.
Password
Contraseña utilizada
para conectarse al
servidor SMTP.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
107
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Direcciones de e-mail
Esta acción admite direcciones de e-mail tanto decoradas como sin decorar. Los siguientes tres
ejemplos enviarían e-mail a la misma dirección:
•
•
•
jgarcia@empresa.com
Juan García <jgarcia@empresa.com>
"García, Juan" <jgarcia@empresa.com>
El primer ejemplo está sin decorar y simplemente proporciona la dirección de e-mail.
El segundo ejemplo está decorado; es simplemente una frase seguida de la dirección de e-mail entre <>.
El tercer ejemplo está decorado pero con caracteres especiales; por lo tanto, la frase debe estar
entre comillas seguida de la dirección de e-mail entre <>.
El nombre decorado es lo que aparece en el cliente de e-mail y proporciona un aspecto descriptivo.
Cuando se utilizan direcciones de e-mail decoradas, es importante tener en cuenta que sólo los
caracteres ASCII de 7 bits se permiten como parte de la frase. Esto significa que los caracteres
acentuados y otros caracteres no estándar que son válidos en los campos de asunto y mensaje
(según el juego de caracteres especificado) no se pueden utilizar aquí.
Destinatarios y remitentes
Las siguientes propiedades permiten configurar quién recibirá el e-mail:
•
•
•
To: usuario a quien se envía el e-mail directamente
cc: usuario a quien se envía una copia del e-mail
bcc: usuario a quien se envía una copia del e-mail de forma secreta
Aunque ninguna de estas propiedades requieren tener un valor, como mínimo se debe especificar
un destinatario en una de ellas. Se pueden especificar varias direcciones para cualquiera de ellas
separándolas con una coma.
Las siguientes propiedades permiten configurar cómo verán los destinatarios del e-mail quién les
ha enviado el correo:
•
•
•
From: especifica de quién parece ser el e-mail
ReplyTo: si un destinatario responde, especifica a quién se envía la respuesta
Sender: especifica quién envía realmente el e-mail; se trata de la dirección a la que
se enviarán los errores que encuentre el servidor SMTP
La propiedad From es obligatoria y puede contener una o varias direcciones de e-mail.
Objetos de acción
108
La propiedad ReplyTo es opcional y se puede definir en una o varias direcciones; si se omite, se
utilizan las direcciones de la lista From.
La propiedad Sender es opcional si sólo se especifica una dirección en la lista From; de lo contrario,
si se especifican varias direcciones para la propiedad From, es obligatoria. Cuando se define, la
propiedad Sender sólo puede una dirección. Si se omite, la propiedad Sender se define en la
primera (o única) dirección de la lista From.
Ejemplo
Una gerente de préstamos de un banco desea enviar un e-mail a varias ubicaciones para anunciar
los nuevos tipos de interés de los préstamos. El siguiente fragmento muestra uno de los e-mails
enviados cuando se ejecuta este script.
with EmailSMTP
.To = "^"García, Juan^" <jgarcía@empresa.com>"
.From = "María Ruiz<maria@empresa.com>"
.ReplyTo = "Tipos de interés de préstamos <jorge@empresa.com>"
.Sender = "admin@empresa.com"
.Subject = "Anuncio de tipos de interés"
.Message = "Consultad los nuevos tipos de interés para los préstamos en el
folleto adjunto."
.Attachment = original.document
.Go()
endwith
En este fragmento, el e-mail se envía a Juan García. Observe cómo se utiliza una dirección de
e-mail decorada; debido a que incluye un carácter especial (la coma), la frase debe estar entre
comillas. Como las cadenas de LDDScript están entre comillas, "^" es una secuencia de escape
para que se puedan utilizar comillas en la cadena. El e-mail procede de la gerente de préstamos
María Ruiz. Si Juan García tiene una duda y responde al e-mail, la respuesta se enviará a Jorge,
que es el ayudante de María y se encargará de las preguntas. Si se produce algún error y no se
puede enviar el e-mail, se enviará un mensaje al administrador.
Autenticación
El mecanismo de autenticación está diseñado para comprobar que un usuario concreto puede
enviar correo con una ruta de acceso de devolución concreta (direcciones de origen y de destino
válidas). Algunos servidores SMTP no necesitan autenticación, mientras que otros puede que
tengan una configuración más compleja. En la mayoría de los casos, suministrar una contraseña
será suficiente. Consulte a su proveedor de servicio SMTP para obtener más información. Se
admiten los siguientes métodos de autenticación:
•
•
•
•
•
Ninguno: esto puede ser válido si el servidor SMTP no tiene restricciones o se ha
configurado para confiar de forma implícita en el servidor LDD.
Iniciar sesión: se trata del método más habitual en los servidores de Windows.
Normal: este método es habitual en numerosos servidores de UNIX.
CRAMMD5: este método es muy habitual y no envía la contraseña como texto normal.
DIGESTMD5: este método también es muy habitual y es resistente a numerosos ataques
comunes por e-mail.
Si especifica Automático como método de autenticación, el servidor LDD determinará el mecanismo
más seguro y con más funciones que admitan tanto los servidores LDD como SMTP.
Objetos de acción
109
FaxByPrinter (Fax)
Objetivo: envía por fax un documento mediante una impresora Lexmark con un servidor de
impresión MarkNet™ con funciones de fax.
Grupo de instalación: módulo de impresión
Requisitos previos: un servidor de impresión MarkNet con funciones de fax.
Entradas: Archivo PostScript (PS), Blanco y negro o Escala de grises de 8 bits.
Propiedades
Nombre
Descripción
Tipo de datos Información adicional
Input
Documento que se enviará
por fax.
doc
IPAddress
Dirección IP o nombre de
host DNS de la impresora
equipada con fax.
string
FaxNumber
Número de teléfono al que
se enviará el fax.
string
StationID
ID de estación que utiliza
el fax.
string
WaitForCompletion
Esperar a que termine el fax
antes de continuar.
bool
Si se define en TRUE, el
método Go no volverá hasta
que el fax se haya enviado
correctamente, el fax
devuelva un error o se
alcance el tiempo de espera
especificado por
WaitTimeout. Si se define en
FALSE, el método Go vuelve
inmediatamente después de
enviar la solicitud de fax.
WaitTimeout
Número máximo de minutos
que se esperará a que
termine el fax o se produzca
un error.
int
Este valor se ignora si
WaitForCompletion está
definido en FALSE. Este
valor debe dejar tiempo para
la solicitud inicial y cualquier
reintento.
El archivo debe estar en
formato .PS.
Valores válidos:
De 0 a 60
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
110
Nombre
Descripción
Tipo de datos Información adicional
RedialMinutes
Si se produce un error en el
fax, tiempo en minutos que
se tiene que esperar antes de
reintentar.
int
Para no realizar ningún
reintento, este valor se debe
definir en 0. Para utilizar el
valor definido en la página
Web de la impresora, utilice
la constante LDD
LDD_PRINTER_DEFAULT.
Valores válidos:
De 0 a 9 o
LDD_PRINTER_DEFAULT
Valor predeterminado:
LDD_PRINTER_DEFAULT
RedialTimes
Número de veces que se
reintentará el fax.
int
Para utilizar el valor definido
en la página Web de la
impresora, utilice la
constante LDD
LDD_PRINTER_DEFAULT.
Valores válidos:
De 1 200 o
LDD_PRINTER_DEFAULT
Valor predeterminado:
LDD_PRINTER_DEFAULT
Los nombres en negrita son propiedades obligatorias.
Métodos
Nombre
Sintaxis
Descripción
Go
bool Go()
Ejecuta la acción. Devuelve
TRUE o FALSE para indicar
si la acción ha terminado
correctamente.
Reset
void Reset()
Borra las propiedades actuales
y les devuelve su valor
predeterminado.
Objetos de acción
111
FTPget (FTP: obtener)
Objetivo: recupera un archivo de un servidor FTP especificado.
Grupo de instalación: Document Server
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
Output
Documento en el que se escribe la
salida de esta acción.
doc
ServerAddress
Dirección IP o nombre de host DNS
del servidor FTP del que se
recuperará el archivo.
string
UserName
Nombre de usuario utilizado para
conectarse al servidor FTP.
string
Si no se requiere ninguno,
introduzca una cadena vacía.
Valor predeterminado:
anonymous
Password
Contraseña utilizada para conectarse
al servidor FTP.
string
Si no se requiere ninguno,
introduzca una cadena vacía.
Valor predeterminado:
anonymous
Account
Nombre de cuenta a utilizar si se
requiere alguna.
string
La mayoría de los servidores
FTP no requieren que se
especifique una cuenta.
TransferMode
Modo utilizado para transferir el
archivo solicitado.
int
(LDD
Constant)
Si el documento es una
imagen o imágenes, seleccione
el modo
LDD_FTPMODE_BINARY.
Si el documento es texto,
seleccione el modo
LDD_FTPMODE_ASCII.
Valor predeterminado:
LDD_FTPMODE_BINARY
SourcePath
Archivo que se recuperará.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
112
Si no se especifica una ruta
de acceso con el nombre de
archivo, el archivo se
recuperará del directorio FTP
predeterminado del usuario,
Ruta de acceso origen de
ejemplo en la página 113.
Métodos
Nombre
Sintaxis
Descripción
Go
bool Go()
Ejecuta la acción. Devuelve
TRUE o FALSE para indicar
si la acción ha terminado
correctamente.
Reset
void Reset()
Borra las propiedades actuales
y les devuelve su valor
predeterminado.
Nota: debido a las diferencias entre los sistemas de archivos, cuando se transfiere un
archivo en modo ASCII, es posible que el tamaño del nuevo archivo no sea idéntico
al del archivo original en el servidor FTP.
Ruta de acceso origen
de ejemplo
Explicación
/sample1.tif
Recupera el archivo "sample1.tif" del directorio raíz del ordenador
origen.
sample1.tif
Recupera el archivo "sample1.tif" del directorio FTP predeterminado
del usuario.
/zdir/sample1.tif
Recupera el archivo "sample1.tif" del directorio "zdir" que está debajo
del directorio raíz del ordenador origen (no el directorio FTP
predeterminado del usuario).
myfile/sample1.tif
Recupera el archivo "sample1.tif" del subdirectorio "myfile" que se
encuentra debajo del directorio FTP predeterminado del usuario.
Objetos de acción
113
FTPput (FTP: colocar)
Objetivo: transfiere un documento a un servidor FTP especificado.
Grupo de instalación: Document Server
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos Información adicional
Input
Documento a transferir.
doc
ServerAddress
Dirección IP o nombre de host
DNS del servidor FTP al que se
transferirá el documento.
string
UserName
Nombre de usuario utilizado
string
para conectarse al servidor FTP.
Si no se requiere ninguno,
introduzca una cadena vacía.
Valor predeterminado:
anonymous
Password
Contraseña utilizada para
conectarse al servidor FTP.
string
Si no se requiere ninguno,
introduzca una cadena
vacía.
Valor predeterminado:
anonymous
DestinationPath
Nombre de la ruta de acceso
completa del archivo
transferido al servidor FTP.
string
Si el valor sólo contiene
un nombre de archivo, el
archivo se almacenará en el
directorio FTP
predeterminado del usuario,
Ruta de acceso de destino
de ejemplo en la
página 115.
Account
Nombre de cuenta a utilizar si
se requiere alguna.
string
La mayoría de los servidores
FTP no requieren que se
especifique una cuenta.
AppendTimeStamp
Añade un sello de hora que
contiene el año, mes, día y
hora del día al nombre de
archivo de modo que los
archivos con el mismo nombre
no se sobrescriban.
bool
Para el sello de hora se
utiliza la variable reservada
original.usertime.
Crea la ruta de acceso
especificada en el parámetro
"DestinationPath" si no existe.
bool
CreateDirectory
Valor predeterminado:
TRUE
Si el valor se define en FALSE
y el directorio especificado no
existe, se producirá un error
en la acción.
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
114
Nombre
Descripción
Tipo de datos Información adicional
TransferMode
Modo utilizado para transferir el
documento.
int
(LDD
Constant)
Si el documento es una
imagen, seleccione el modo
LDD_FTPMODE_BINARY.
Si el documento es texto,
seleccione el modo
LDD_FTPMODE_ASCII.
Valor predeterminado:
LDD_FTPMODE_BINARY
Overwrite
Sobrescribe el archivo FTP
anterior.
bool
Valor predeterminado:
TRUE
Los nombres en negrita son propiedades obligatorias.
Métodos
Nombre
Sintaxis
Descripción
Go
bool Go()
Ejecuta la acción. Devuelve
TRUE o FALSE para indicar si
la acción ha terminado
correctamente.
Reset
void Reset()
Borra las propiedades actuales
y les devuelve su valor
predeterminado.
Nota: si un documento contiene varios archivos, los archivos creados en el servidor
FTP tendrán un número añadido después de la extensión de archivo y antes del
sello de hora (si se ha solicitado un sello de hora) con el fin de crear un nombre
de archivo único. Debido a las diferencias entre los sistemas de archivos, cuando
se transfiere un archivo en modo ASCII, es posible que el tamaño del nuevo
archivo no sea idéntico al del archivo original.
Ruta de acceso de destino
de ejemplo
Explicación
/sample1.tif
Coloca el archivo "sample1.tif" en el directorio raíz del ordenador
de destino.
sample1.tif
Coloca el archivo "sample1.tif" en el directorio FTP
predeterminado del usuario con el nombre "sample1.tif".
/zdir/sample1.tif
Coloca el archivo "sample1.tif" en el directorio "zdir" que está
debajo del directorio raíz del ordenador de destino (no el
directorio FTP predeterminado del usuario).
Objetos de acción
115
Acciones de GroupWise
Requisitos previos:
•
En el equipo host debe estar disponible la conectividad NetWare necesaria. Esto incluye los
controladores necesarios para que el servidor Lexmark Document Solutions (LDS) se conecte a un
servidor NetWare. Compruebe las propiedades de Entorno de red para asegurarse de que se han
instalado los gateways y protocolos necesarios al instalar GroupWise. El módulo utiliza cualquier
protocolo disponible y no está limitado a TCP/IP.
•
También debe estar instalado el software de cliente de NetWare. En concreto, el servidor debe tener
instalado el cliente de Novell para Windows NT, Windows 2000 o Windows XP. El cliente debe ser
compatible con la versión de NetWare que se ejecuta en el host de GroupWise. Como mínimo, el
cliente debe estar configurado para señalar a un servidor NetWare con un árbol y contexto
específicos. Consulte los valores avanzados en el cuadro de diálogo del cliente de Novell.
•
En el equipo servidor también debe estar instalado el cliente de Novell GroupWise para Windows.
Si la aplicación GroupWise se puede iniciar desde el icono en el equipo servidor sin requerir ningún
otro dato del usuario que un nombre de usuario y contraseña, la configuración es correcta.
•
La versión de GroupWise debe ser la 6 como mínimo.
•
Según su configuración de GroupWise preferido, puede requerir que Document Server se conecte
como un determinado usuario al inicio. Esto se puede definir en el subprograma Servicios de Panel
de control (en Windows 2000 se encuentra en Herramientas administrativas). De este modo el módulo
GroupWise puede recuperar cualquier configuración de NetWare necesaria a partir de los valores de
usuario en el Registro. No debe ser necesaria la interacción con el escritorio. No es necesario que el
cliente de GroupWise esté en ejecución. Es muy recomendable que cualquier componente interactivo
de GroupWise, como la aplicación de notificación, esté desactivado en el equipo servidor.
Opciones de configuración
El módulo GroupWise se puede utilizar de tres formas posibles:
•
•
•
Cada llamada a GroupWise requiere un nombre de usuario y una contraseña para
conectarse. Las diferentes llamadas se pueden conectar como usuarios distintos.
Cada llamada a GroupWise requiere una conexión utilizando el mismo nombre de usuario y
contraseña, pero la conexión puede ser proxy como otro usuario. La función proxy no requiere
una contraseña, pero precisa que el destino proxy conceda los derechos de acceso adecuados.
Cada llamada a GroupWise se conecta utilizando los valores predeterminados del sistema
especificados en el cliente de Novel o en el inicio de GroupWise. No es necesario que cada
script indique un nombre de conexión o una contraseña. Está disponible el registro proxy.
Sugerencia: se recomienda la tercera forma. En concreto, se recomienda crear una cuenta de
GroupWise dedicada para Document Distributor. Para permitir que LDD actúe en nombre de otros
usuarios, el administrador de GroupWise o los propios usuarios deben configurar LDD para que
actúe como proxy. Dichas conexiones de proxy no requieren que las contraseñas de los usuarios
se expongan a LDD y la conexión de la cuenta de LDD se puede configurar como un valor
predeterminado del sistema. Este método permite que el administrador de GroupWise controle
la seguridad, en vez de hacerlo el administrador de Document Server.
Para obtener más información sobre estos requisitos previos, consulte la ayuda en línea del
administrador de GroupWise, administrador de NetWare, cliente de NetWare o GroupWise.
Objetos de acción
116
GWMail (E-mail)
Objetivo: enviar correo mediante GroupWise.
Resultados: el correo se puede enviar a uno o varios destinatarios con o sin anexo de archivo en
varios formatos. No hay control sobre la entrega, prioridad, notificación y seguridad de los mensajes.
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
RootAccount
ID de usuario para que
el módulo se conecte
mediante el cliente de
Novell para Windows.
string
No tiene que ser el mismo que el nombre
de usuario de GroupWise. Si no se
especifica, se busca en el sistema un
valor predeterminado adecuado.
RootPassword
Contraseña para la
conexión del cliente de
Novell.
string
Si no se especifica, se busca en el
sistema un valor predeterminado
adecuado.
ProxyAccount
Cuenta proxy con la
que el módulo realiza
todas las operaciones
de GroupWise.
string
El nombre de cuenta especificado aquí
debe ser un nombre de cuenta de
GroupWise y debe aparecer en la libreta
de direcciones del sistema de GroupWise.
Si es necesario, GroupWise completa el
nombre. El usuario del que se va a ser
proxy, o el administrador de GroupWise,
debe haber asignado derechos de proxy
adecuados a la conexión especificada por
la cuenta raíz. Si se especifica, todas las
operaciones de GroupWise se realizan
con la cuenta raíz.
To
Lista de las direcciones
de e-mail a las que se
enviará este mensaje.
string
La lista puede estar separada por comas,
como en los demás módulos de correo de
LDD, o puede estar separada por puntos y
comas como en el cliente de GroupWise.
Las direcciones se resuelven con las
libretas de direcciones del remitente,
incluyendo el completar los nombres.
Si el servidor GroupWise lo admite,
también funcionarán las direcciones
externas como SMTP y MAPI.
Nota: se debe especificar un destinatario
como mínimo en los campos To, From,
cc o bcc.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
117
Nombre
Descripción
Tipo de datos Información adicional
From
Dirección de e-mail del
remitente.
string
El nombre del usuario proxy o raíz
siempre se añade a este campo; no se
puede definir de forma fraudulenta una
dirección From mediante este método. El
valor predeterminado es que la dirección
From no esté decorada. Una entrada
adecuada en este campo podría ser
"Enviado por LDD en nombre de" u otra
decoración similar.
cc
Lista de las direcciones
de e-mail a las que se
enviarán copias.
string
Al igual que el campo To, la lista puede
estar separada por comas o por puntos y
comas, y puede incluir cualquier dirección
que se pueda resolver con las libretas de
direcciones o con conexiones externas del
servidor GroupWise.
bcc
Lista de las direcciones
de e-mail a las que se
enviarán copias
ocultas.
string
Ningún destinatario puede ver a este
destinatario en el correo recibido. Las
mismas condiciones se aplican a los
campos To y cc.
Subject
Línea de asunto de
este correo.
string
Message
Contenido del mensaje
de este correo.
string
El cuerpo del mensaje está sujeto
a la limitación de GroupWise de
aproximadamente 32.000 caracteres.
MessageFormat
Formato en el que se
codifica el mensaje
ASCII.
int
(LDD
Constant)
Valores válidos:
LDD_GWMSGTYPE_PLAINTEXT
LDD_GWMSGTYPE_RICHTEXT
Valor predeterminado:
LDD_GWMSGTYPE_PLAINTEXT
Attachments
Anexos de archivo que
se añadirán a este
mensaje.
doc
Para adjuntar varios archivos, cree una
variable de tipo doc y llame al método
AddFile () del objeto doc para agregarlos
a dicho objeto antes de utilizarlo aquí.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
118
Nombre
Descripción
Tipo de datos Información adicional
ConvertAttachments Especifica si la oficina
de correos de
GroupWise debe
cambiar los anexos
a formularios que se
puedan ver en
GroupWise.
bool
El valor predeterminado es FALSE,
que transmite cualquier anexo en su
formato original tal como lo ha enviado
LDD y puede requerir que los
destinatarios utilicen una aplicación
externa para verlo. Si se define en TRUE,
se da a la oficina de correos el derecho
de cambiar los formatos de los anexos
a formularios que se puedan ver en
GroupWise. Dicha modificación puede
cambiar el formato o la compresión de
archivo y no se garantiza que conserve
los códigos de formato o el detalle gráfico.
Consulte al administrador de la oficina de
correos para obtener información sobre
estas conversiones.
Priority
int
(LDD
Constant)
Se aplica siempre que sea posible en
función del mecanismo de transporte
utilizado para enviar el correo. Para los
destinos GroupWise, la prioridad se indica
mediante el color de icono en la bandeja
de entrada de los destinatarios.
Prioridad asignada
a este mensaje.
Valores válidos:
LDD_PRIORITY_LOW
LDD_PRIORITY_NORMAL
LDD_PRIORITY_HIGH
Valor predeterminado:
LDD_PRIORITY_NORMAL
Private
RequestReply
Especifica si este
mensaje se oculta
a los usuarios proxy
y sólo lo puede ver el
destinatario al que va
dirigido.
bool
Indica si se adjunta una int
(LDD
solicitud de respuesta
Constant)
al mensaje. Sólo es
válido para los destinos
de GroupWise.
Sólo es relevante para los destinos
de GroupWise.
Valor predeterminado:
FALSE
Valores válidos:
LDD_GWREPLY_NONE
LDD_GWREPLY_CONVENIENT
LDD_GWREPLY_DAYS
Valor predeterminado:
LDD_GWREPLY_NONE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
119
Nombre
Descripción
Tipo de datos Información adicional
ReplyDays
Si RequestReply se
int
define en
LDD_GWREPLY_DAYS,
este número especifica
cuántos días espera el
mensaje antes de enviar
a sus destinatarios un
recordatorio.
NotifyOpened
Cuando el destinatario
abre los mensajes, se
notifica al remitente
proxy mediante la
aplicación de escritorio
GroupWise Notify o se
envía un e-mail de
confirmación.
Sólo es válido para destinatarios de
GroupWise. Si se activa, el valor
predeterminado es 0, solicitando una
respuesta el mismo día.
int
Sólo es válido para los destinos de
GroupWise.
Valores válidos:
LDD_GWNOTIFICATION_NONE
LDD_GWNOTIFICATION_MESSAGE
LDD_GWNOTIFICATION_USER
LDD_GWNOTIFICATION_BOTH
Valor predeterminado:
LDD_GWNOTIFICATION_NONE
NotifyDeleted
Cuando el destinatario
elimina los mensajes,
se notifica al remitente
proxy mediante la
aplicación de escritorio
GroupWise Notify o se
envía un e-mail de
confirmación.
int
Sólo es válido para los destinos de
GroupWise.
Valores válidos:
LDD_GWNOTIFICATION_NONE
LDD_GWNOTIFICATION_MESSAGE
LDD_GWNOTIFICATION_USER
LDD_GWNOTIFICATION_BOTH
Valor predeterminado:
LDD_GWNOTIFICATION_NONE
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
120
GWDiscuss (E-mail)
Objetivo: enviar un mensaje de correo a una carpeta compartida como un debate. Todos los
usuarios que comparten acceso a la carpeta de destino pueden ver el correo. El correo se puede
utilizar como contenedor simple de cualquier documento o archivo, al que posteriormente se puede
acceder mediante búsqueda de texto completo.
Resultados: el correo se entrega en una carpeta compartida. Puede incluir anexos de archivo.
Todos los usuarios que comparten acceso a esta carpeta pueden ver los mensajes de correo.
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
RootAccount
ID de usuario para
que el módulo se
conecte mediante el
cliente de Novell
para Windows.
string
No tiene que ser el mismo que el
nombre de usuario de GroupWise.
Si no se especifica, se busca en el
sistema un valor predeterminado
adecuado.
RootPassword
Contraseña para la
conexión del cliente
de Novell.
string
Si no se especifica, se busca en
el sistema un valor predeterminado
adecuado.
ProxyAccount
Cuenta proxy con la
que el módulo
realiza todas las
operaciones de
GroupWise.
string
El nombre de cuenta especificado
aquí debe ser un nombre de cuenta
de GroupWise y debe aparecer en la
libreta de direcciones del sistema de
GroupWise. Si es necesario,
GroupWise completa el nombre. El
usuario del que se va a ser proxy, o
el administrador de GroupWise, debe
haber asignado derechos de proxy
adecuados a la conexión especificada
por la cuenta raíz. Si se especifica,
todas las operaciones de GroupWise
se realizan con la cuenta raíz.
From
Se puede agregar
texto adicional al
campo From como
parte del mensaje.
string
El usuario debe añadir el nombre del
usuario raíz o proxy a este campo.
El valor predeterminado es que la
dirección From no esté decorada.
Una entrada adecuada en este campo
podría ser "Enviado por LDD en
nombre de Juan García" u otra
decoración similar.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
121
Nombre
Descripción
Tipo de datos
Información adicional
Folder
Ruta de acceso de
carpeta en la que se
escribirá el correo.
string
La ruta de acceso de carpeta es
relativa al directorio de inicio global en
cuyo nombre actúa Document Server.
Puede ser un usuario proxy o la cuenta
raíz de la conexión de LDD. Se admite
el anidamiento de carpetas mediante
el separador "/"; por lo tanto, Mueble/
Compartido/Debate es una ruta de
acceso de carpeta adecuada. Todos
los usuarios con derechos de lectura
compartida en esta carpeta pueden
ver el correo. Todos los usuarios con
derechos de agregación compartida
en esta carpeta pueden crear correos
de debate en esta carpeta.
Subject
Línea de asunto de
este correo.
string
Message
Contenido del
mensaje de este
correo.
string
El cuerpo del mensaje está sujeto
a la limitación de GroupWise de
aproximadamente 32.000 caracteres.
El cuerpo del mensaje está disponible
para realizar búsquedas de texto
completo en él, lo que permite las
tareas de indización que, de otra
manera, no estarían disponibles
en GroupWise.
MessageFormat
Formato en el que
se codifica el
mensaje ASCII.
int
(LDD Constant)
Valores válidos:
LDD_GWMSGTYPE_PLAINTEXT
LDD_GWMSGTYPE_RICHTEXT
Valor predeterminado:
LDD_GWMSGTYPE_PLAINTEXT
Attachments
Anexos de archivo
que se añadirán a
este mensaje.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
122
Para adjuntar varios archivos, cree
una variable de tipo doc y llame al
método AddFile () del objeto doc para
agregarlos a dicho objeto antes de
utilizarlo aquí.
Nombre
Descripción
Tipo de datos
Información adicional
ConvertAttachments Especifica si la
oficina de correos
de GroupWise debe
cambiar los anexos
a formularios que se
puedan ver en
GroupWise.
bool
El valor predeterminado es FALSE,
que transmite cualquier anexo en su
formato original tal como lo ha
enviado LDD y puede requerir que los
destinatarios utilicen una aplicación
externa para verlo. Si se define en
TRUE, se da a la oficina de correos
el derecho de cambiar los formatos
de los anexos a formularios que se
puedan ver en GroupWise. Dicha
modificación puede cambiar el
formato o la compresión de archivo
y no se garantiza que conserve los
códigos de formato o el detalle
gráfico. Consulte al administrador
de la oficina de correos para obtener
información sobre estas
conversiones.
Priority
int
(LDD Constant)
Se aplica siempre que sea posible en
función del mecanismo de transporte
utilizado para enviar el correo. Para
los destinos de GroupWise, la
prioridad se indica mediante el color
de icono en la bandeja de entrada del
destinatario.
Prioridad asignada
a este mensaje.
Valores válidos:
LDD_PRIORITY_LOW
LDD_PRIORITY_NORMAL
LDD_PRIORITY_HIGH
Valor predeterminado:
LDD_PRIORITY_NORMAL
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Nota: el correo de debate no aparece como los debates creados desde el cliente de
GroupWise (nota y alfiler) sino como un correo de borrador (lápiz y sobre). Los
dos funcionan de un modo algo distinto.
Objetos de acción
123
GWCheckIn (Groupware: introducir)
Objetivo: introducir un archivo de documento en una biblioteca de documentos de GroupWise.
Resultados: se creará un nuevo documento en la biblioteca de destino. Además, se pueden definir
los derechos de acceso por usuario o por grupo a este nuevo documento en la biblioteca. La acción
puede crear opcionalmente una referencia al documento en una carpeta compartida para facilitar el
acceso a varios usuarios. Los controles de acceso se pueden aplicar por versión. El nuevo
documento es la 'raíz' de una nueva jerarquía de control de versiones.
Propiedades: además de los valores del módulo GroupWise común, este módulo tiene las
siguientes propiedades.
Nombre
Descripción
Tipo de datos
Información adicional
RootAccount
ID de usuario para
que el módulo se
conecte mediante
el cliente de Novell
para Windows.
string
No tiene que ser el mismo que el
nombre de usuario de GroupWise.
Si no se especifica, se busca en el
sistema un valor predeterminado
adecuado.
RootPassword
Contraseña para la
conexión del cliente
de Novell.
string
Si no se especifica, se busca en el
sistema un valor predeterminado
adecuado.
ProxyAccount
Cuenta proxy con
la que el módulo
realiza todas las
operaciones de
GroupWise.
string
El nombre de cuenta especificado
aquí debe ser un nombre de
cuenta de GroupWise y debe
aparecer en la libreta de
direcciones del sistema de
GroupWise. Si es necesario,
GroupWise completa el nombre.
El usuario del que se va a ser
proxy, o el administrador de
GroupWise, debe haber asignado
derechos de proxy adecuados a la
conexión especificada por la
cuenta raíz. Si se especifica, todas
las operaciones de GroupWise se
realizan con la cuenta raíz.
Input
Documento que se va
a insertar en el control
de versiones.
doc
GWCheckIn crea un nuevo objeto
de documento de GroupWise por
cada archivo del documento
entrante (conceptualmente, un
documento de GroupWise es una
o varias versiones de un único
archivo). En la biblioteca, a cada
nuevo documento se le asigna un
nombre derivado de la etiqueta del
documento en Document
Distributor.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
124
Nombre
Descripción
Tipo de datos
Información adicional
Library
Nombre de la
biblioteca de
documentos de
GroupWise en la que
se insertará este
documento.
string
El nombre de la biblioteca de
documentos es exactamente como
aparece en las carpetas de
búsqueda de GroupWise.
VersionDescription
Descripción para
string
incluirla en las
propiedades de esta
versión del documento.
El valor predeterminado es no
incluir ninguna descripción; sin
embargo, cadenas aceptables
podrían ser "Enviado por LDD".
MarkOfficial
Cuando se introduce,
el documento siempre
se marca como la
versión actual.
bool
GroupWise permite asignar dos
niveles de promoción a un
documento. Las bifurcaciones
recientes de un documento se
indican como actuales, mientras
que una versión individual se puede
marcar como oficial. En la versión
de documento oficial se pueden
definir los privilegios de seguridad.
Este valor marca automáticamente
el nuevo documento como una
versión oficial. El valor
predeterminado es TRUE.
AccessRights
De forma
predeterminada, los
derechos de acceso
aplicados a un
documento son
conceder acceso
completo al autor del
documento y denegar
todo tipo de acceso a
los demás.
string
Normalmente, se recomienda
especificar derechos de acceso
a determinados usuarios o grupos,
según la versión.
Folder
Si se especifica, indica string
una carpeta personal
o compartida a la que
se envía una
referencia a este
documento.
La ruta de acceso de carpeta
es relativa al directorio de inicio
global de la conexión de LDD. Se
admite el anidamiento de carpetas
mediante el separador "/"; por lo
tanto, "Mueble/Compartido/
Documentos/Noviembre" es una
ruta de acceso de carpeta
adecuada. Todos los usuarios con
derechos de lectura compartida en
esta carpeta pueden ver la
referencia al documento. Sin
embargo, tenga en cuenta que,
a menos que a los usuarios se les
conceda expresamente derechos
de acceso, no pueden manipular
el documento.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
125
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Derechos de acceso
•
Los derechos de acceso se pueden definir para grupos o usuarios, por versión según sea necesario.
La sintaxis de los derechos de acceso permite agregar o quitar derechos progresivamente; por
ejemplo, de este modo puede conceder derechos de visualización a todo un grupo y, a continuación,
agregar derechos de edición a un miembro específico del grupo. También puede asignar derechos
a todos los visores. De forma predeterminada, al autor del documento se le conceden derechos
completos, mientras que a los demás se les deniega cualquier tipo de acceso. Puede modificar este
comportamiento mediante el valor de la cadena de derechos de acceso.
•
Tenga en cuenta que asignar derechos de visualización a un determinado documento o versión
permite que el usuario tome una instantánea de dicho documento y lo copie, pero los cambios
no afectan al original.
Sintaxis de los derechos de acceso
Conceptualmente, la cadena de derechos de acceso es un conjunto delimitado por comas
de comandos de acceso con el formato {nombre de usuario o grupo}{':'}{derechos de acceso}.
Se pueden especificar tantos usuarios o grupos en la cadena de derechos de acceso como sea
necesario. Los usuarios o grupos de la cadena de derechos de acceso deben estar incluidos en
cualquiera de las libretas de direcciones que pertenezcan al ID de GroupWise utilizado por LDD
para conectarse. Los grupos se expanden en sus miembros individuales. La parte de derechos
de acceso de la cadena se compone de los caracteres "V", "E" y "D" para conceder derechos de
visualización, edición y eliminación. El carácter "M" concede permiso para modificar la seguridad
de un documento. En GroupWise 5.2 y versiones posteriores el carácter "S" se puede utilizar para
conceder derechos para compartir. Si se antepone a cualquiera de estos caracteres un "-", se
revoca dicho privilegio a este usuario o grupo. Si se incluye "c", "o" o "a" en la parte de derechos de
acceso, cualquiera de los caracteres posteriores se aplican, respectivamente, sólo a las versiones
"actual", "oficial" o "todas las demás" del documento (los derechos de modificación de seguridad
especificados por "M" se aplican a todas las versiones). De forma predeterminada, los derechos
de acceso se aplican a todas las versiones del documento. Si no se especifica un nombre de usuario
o grupo, los derechos de acceso predeterminados serán públicos.
Objetos de acción
126
Ejemplo:
Puede especificar la siguiente cadena de derechos de acceso:
oV,DESARROLLO:VE,DIRECTORES:SaD,guest:-E,María Ruiz:VEDS-M,Juan García:M
•
oV: permite que un documento sólo se pueda ver en su versión oficial de forma pública.
•
DESARROLLO:VE: permite que el grupo denominado DESARROLLO vea y edite todas las versiones
del documento.
•
DIRECTORES:SaD: permite que el grupo DIRECTORES comparta cualquier versión o elimine las
versiones que no sean críticas del documento.
•
guest:-E: elimina los privilegios de edición de los usuarios que visiten el equipo de desarrollo como
invitados.
•
María Ruiz:VEDS-M,Juan García:M: permite que María Ruiz realice cualquier operación en el
documento, excepto cambiar la seguridad y conceder a Juan García acceso completo a las opciones
de seguridad.
Nota: los derechos de acceso son acumulativos, por lo que cualquier usuario puede ver
la versión oficial, mientras que el grupo DIRECTORES, que también forma parte
del grupo DESARROLLO, puede automáticamente ver y editar todas las
versiones. Si Juan García decide que estos privilegios son incorrectos, puede
acceder a las propiedades para compartir de este documento y modificarlo
manualmente más adelante, por usuario, si es necesario.
Objetos de acción
127
ImageCombine (Imágenes: combinar en documento)
Objetivo: crea un archivo de imagen multipágina a partir de varios archivos de imagen de una sola
página. Es lo contrario de ImageSeparate.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen
de la acción.
doc
La entrada debe estar en formato
de imagen.
Output
doc
Contiene el
documento de salida
generado por la
acción.
A esta propiedad sólo se puede
acceder después de llamar al
método Go.
Format
int
Formato de la
imagen multipágina (LDD Constant)
de salida en la que
desea combinar los
archivos de entrada.
Valores válidos:
LDD_IMGFORMAT_TIF
LDD_IMGFORMAT_TIFPB
LDD_IMGFORMAT_TIFG3
LDD_IMGFORMAT_TIFG4
LDD_IMGFORMAT_DCX
Valor predeterminado:
LDD_IMGFORMAT_TIF
ColorDepth
Bit de color que
tendrá el archivo de
salida.
int
(LDD Constant)
Valores válidos:
LDD_IMGDEPTH_BW
LDD_IMGDEPTH_4C
LDD_IMGDEPTH_8C
LDD_IMGDEPTH_8G
LDD_IMGDEPTH_24C
LDD_IMGDEPTH_24G
Valor predeterminado:
LDD_IMGDEPTH_8C
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
128
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Nota: si la profundidad de color del archivo de salida especificada en el script no es
válida, la acción selecciona una profundidad de color para dicho formato y termina
la operación de combinación.
Objetos de acción
129
ImageCrop (Imágenes: recortar)
Objetivo: recorta uno o varios archivos de imagen según el rectángulo especificado.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen de la
acción.
doc
La entrada debe estar en formato
de imagen.
Output
Contiene el documento de
salida generado por la
acción.
doc
A esta propiedad sólo se puede
acceder después de llamar al
método Go().
Left
El borde izquierdo (en
píxeles) del rectángulo que
se recortará de la imagen.
int
Top
El borde superior (en
píxeles) del rectángulo que
se recortará de la imagen.
int
Right
El borde derecho (en
píxeles) del rectángulo que
se recortará de la imagen.
int
Bottom
El borde inferior (en
píxeles) del rectángulo que
se recortará de la imagen.
int
AllPages
Recortar todas las páginas
del documento de entrada.
bool
Primera página a recortar.
int
StartPage
Valor predeterminado:
TRUE
El valor sólo se utiliza cuando
AllPages está definido en
FALSE.
Valor predeterminado:
0
EndPage
Última página a recortar.
int
El valor sólo se utiliza cuando
AllPages está definido en
FALSE. El valor 0 indica la última
página del documento.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
130
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
131
Notas:
•
Los valores de Right, Left, Top y Bottom dependen de la resolución de digitalización utilizada para
adquirir el documento. Determine la resolución de digitalización necesaria, determine las posiciones
de píxeles necesarias para delimitar el área y, a continuación, utilice la misma resolución de
digitalización para todos los perfiles que usan el script.
•
La esquina superior izquierda de la página es 0,0 en coordenadas de píxeles. Los valores de Left, Top,
Right y Bottom se deben especificar relativos a estas coordenadas.
(0,0)
Izquierda, Superior
Derecha, Inferior
Objetos de acción
132
ImageInvert (Imágenes: invertir)
Objetivo: invierte una o varias imágenes. La acción de inversión le da a la imagen el aspecto
de negativo fotográfico.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen de la
acción.
doc
La entrada debe estar
en formato de imagen.
Output
Contiene el documento de
salida generado por la
acción.
doc
A esta propiedad sólo se
puede acceder después
de llamar al método Go.
AllPages
Invertir todas las páginas
del documento de entrada.
bool
Valor predeterminado:
Primera página a invertir.
int
StartPage
TRUE
El valor sólo se utiliza
cuando AllPages está
definido en FALSE.
Valor predeterminado:
0
EndPage
Última página a invertir.
int
El valor sólo se utiliza
cuando AllPages está
definido en FALSE. El
valor 0 indica la última
página.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
133
ImageMerge (Imágenes: plantilla)
Objetivo: combinar una imagen encima de otra.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen de la
acción.
doc
La entrada debe estar en formato de imagen.
Output
Contiene el documento
de salida generado por la
acción.
doc
A esta propiedad sólo se puede acceder
después de llamar al método Go.
Position
Especifica la posición en
la página donde se debe
colocar el archivo de
imagen.
int (LDD
Constant)
Valores válidos:
LDD_IMGMERGEPOS_TOPLEFT
LDD_IMGMERGEPOS_TOPCENTER
LDD_IMGMERGEPOS_TOPRIGHT
LDD_IMGMERGEPOS_CENTERLEFT
LDD_IMGMERGEPOS_CENTER
LDD_IMGMERGEPOS_CENTERIGHT
LDD_IMGMERGEPOS_BOTTOMLEFT
LDD_IMGMERGEPOS_BOTTOMCENTER
LDD_IMGMERGEPOS_BOTTOMRIGHT
LDD_IMGMERGEPOS_CUSTOM
Valor predeterminado:
LDD_IMGMERGEPOS_TOPLEFT
Offset
La desviación (en
píxeles) desde el borde
de la página para colocar
la imagen.
int
Este valor se ignora si la posición se ha
definido en personalizada.
Valor predeterminado:
0
MergeLeft
MergeTop
La coordenada X (en
píxeles) de la esquina
superior izquierda del
área combinada en la
imagen de salida.
int
La coordenada Y (en
píxeles) de la esquina
superior izquierda del
área combinada en la
imagen de salida.
int
Este valor sólo se utiliza si la posición se ha
definido en personalizada.
Valor predeterminado:
0
Este valor sólo se utiliza si la posición se ha
definido en personalizada.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
134
Nombre
Descripción
Tipo de datos
ImageFile
El documento de una
sola página que se
colocará encima del
documento de entrada.
doc
AllPages
Combinar la imagen en
todas las páginas del
documento de entrada.
bool
Primera página
a combinar.
int
StartPage
Información adicional
Valor predeterminado:
TRUE
El valor sólo se utiliza cuando AllPages está
definido en FALSE.
Valor válido:
0-32767
Valor predeterminado:
0
EndPage
Última página
a combinar.
int
El valor sólo se utiliza cuando AllPages está
definido en FALSE. El valor 0 indica la última
página.
Valor válido:
0-32767
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Notas:
•
La combinación de imágenes con una profundidad de color de 8 bits produce una salida con una
profundidad de color de 24 bits.
•
Se pueden combinar imágenes de distintos tipos de archivo. Si ambos archivos tienen la misma
profundidad de color, la salida tiene el mismo formato que la entrada. Si los archivos tienen
profundidades de color distintas, la salida tiene el formato del archivo con la profundidad de color mayor.
•
La esquina superior izquierda de la página es 0,0 en coordenadas de píxeles. La posición se debe
especificar relativa a estas coordenadas.
Objetos de acción
135
•
Los valores de Position dependen de la resolución de digitalización utilizada para adquirir el
documento. Determine la resolución de digitalización necesaria, determine las posiciones de píxeles
necesarias para colocar la imagen combinada en la ubicación correcta y, a continuación, utilice la
misma resolución de digitalización para todos los perfiles que usan el script.
•
El documento especificado por ImageFile se coloca encima de la imagen de entrada durante la acción
ImageMerge.
•
ImageMerge no se puede utilizar para crear una marca de agua.
•
En algunos casos, si ImageFile tiene formato de mapa de bits, aparce un rectángulo negro donde
debería estar la imagen. Para corregirlo, convierta el formato de imagen de ImageFile a PNG y utilice
la imagen convertida como ImageFile.
Objetos de acción
136
Ejemplo:
Este script imprime una copia de cada página digitalizada con un pequeño logotipo de empresa
colocado en la esquina inferior derecha de cada página. El logotipo cubrirá lo que pueda haber en la
esquina inferior derecha del documento original. El logotipo es un archivo TIFF con 300 ppp. Por lo
tanto, este script se puede utilizar con un perfil que digitalizará a 300 ppp.
doc MergeDoc
doc MergePS
doc Logo
real LogoWidth,LogoHeight
real MergeTop, MergeLeft
// dimensiones del logotipo en píxeles
// el logotipo es una imagen con formato TIFF digitalizada a 300 ppp
LogoWidth = 600.0
LogoHeight = 186.0
// Estos cálculos se realizan como números reales porque
// la dimensión del papel es de 21,59 cm (8,5 pulg.)
MergeLeft = 8.50 * 300.0 - LogoWidth
MergeTop = 11.0*300.0 - LogoHeight
Logo.AddFile("c:\ebc\lexlogo.tif")
// Colocar el logotipo en todas las páginas
with ImageMerge
.input=original.document
.MergeLeft= MergeLeft.AsInt()
.MergeTop=MergeTop.AsInt()
.AllPages=TRUE
.ImageFile=Logo
.Go()
MergeDoc=.output
endwith
// Crear archivo PostScript para la impresión
with ConvertToDocument
.input=MergeDoc
.Format=LDD_DOCFORMAT_PS
.PaperSize=LDD_PAPERSIZE_AUTO
.Orientation=LDD_ORIENTATION_AUTO
.PSResolution=LDD_RESOLUTION_AUTO
.AllPages=TRUE
.Go()
MergePS=.output
endwith
// Imprimir el original con logotipo
with PrintForm
.input=MergePS
.IPAddress=original.userip
.PaperType=LDD_PAPERTYPE_DEFAULT
Objetos de acción
137
.Copies=1
.Nup=LDD_NUP_OFF
.NupBorder=TRUE
.Duplex=LDD_DUPLEX_OFF
.OutputBin=LDD_OUTPUTBIN_DEFAULT
.Collate=FALSE
.ConfidentialPrint=FALSE
.WaitForCompletion=FALSE
.Staple=FALSE
.Go()
endwith
Objetos de acción
138
ImageRotate (Imágenes: girar)
Objetivo: girar una imagen en incrementos de 90°.
Grupo de instalación: módulo de imágenes
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen de la
acción.
doc
La entrada debe estar en formato
de imagen.
Output
Contiene el documento
de salida generado por
la acción.
doc
A esta propiedad sólo se puede
acceder después de llamar al
método Go.
AllPages
Gira todas las páginas
del documento de
entrada.
bool
Valor predeterminado:
Primera página a girar.
int
StartPage
TRUE
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
Valor predeterminado:
0
EndPage
Última página a girar.
int
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
El valor 0 indica la última página.
Valor predeterminado:
0
RotatePages
Indica las páginas del
rango especificado que
se deben girar.
int
(LDD Constant)
Valores válidos:
LDD_IMGROTATE_ALLPAGES
LDD_IMGROTATE_ODDPAGES
LDD_IMGROTATE_EVENPAGES
Valor predeterminado:
LDD_IMGROTATE_ALLPAGES
RotationAngle
Ángulo de giro en
grados.
int
(LDD Constant)
Valores válidos:
LDD_IMGROTATE_90
LDD_IMGROTATE_180
LDD_IMGROTATE_270
Valor predeterminado:
LDD_IMGROTATE_90
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
139
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Objetos de acción
140
ImageSeparate (Imágenes: separar en documento)
Objetivo: separa un archivo de imagen multipágina en varios archivos de imagen de una sola
página. El formato de archivo de salida es el mismo que el de entrada.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen de la
acción.
doc
La entrada debe estar
en formato de imagen.
Output
Contiene el documento
de salida generado por la
acción.
doc
A esta propiedad sólo
se puede acceder
después de llamar al
método Go.
AllPages
Separa todas las páginas
del documento de
entrada.
bool
Valor
predeterminado:
StartPage
TRUE
Primera página a separar. int
El valor sólo se utiliza
cuando AllPages está
definido en FALSE.
Valor
predeterminado:
0
EndPage
Última página a separar.
int
El valor sólo se utiliza
cuando AllPages está
definido en FALSE. El
valor 0 indica la última
página.
Valor
predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
141
ImageText (Imágenes: texto de plantilla)
Objetivo: esta acción superpone el texto especificado encima de la imagen indicada por la entrada.
El texto especificado se agrega al rango de páginas indicado del documento de entrada. El usuario
especifica la fuente, el tamaño en puntos y la dirección del texto. Además, el usuario debe
especificar la ubicación del texto en la página.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen
de la acción.
doc
Documento donde se debe colocar el texto.
El documento debe estar en formato de
imagen (como TIFF, JPEG, BMP).
Output
doc
Contiene el
documento de
salida generado por
la acción.
Text
Texto que se
agregará al
documento.
string
Font
Fuente que se
utilizará para el
texto.
int (LDD Constant)
Documento creado por la incorporación
del texto.
La fuente debe tener uno de los siguientes
valores:
• LDD_IMGTEXTFONT_ARIAL
(Arial)
• LDD_IMGTEXTFONT_COURIER
(Courier New)
• LDD_IMGTEXTFONT_TIMES
(Times New Roman)
Valor predeterminado:
• LDD_IMGTEXTFONT_ARIAL
Size
Tamaño en puntos
que se utilizará
para el texto.
int
El valor debe estar entre 5 y 20 (incluidos).
El valor predeterminado es 10.
Color
Color que se
utilizará para el
texto.
int (LDD Constant)
El color debe tener uno de los siguientes
valores:
•
•
•
•
LDD_IMGTEXTCOLOR_BLACK
LDD_IMGTEXTCOLOR_RED
LDD_IMGTEXTCOLOR_GREEN
LDD_IMGTEXTCOLOR_BLUE
Valor predeterminado:
• LDD_IMGTEXTCOLOR_BLACK
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
142
Nombre
Descripción
Tipo de datos
Información adicional
Bold
Indica si el texto
debe estar en
negrita.
bool
Valor predeterminado:
Indica si el texto
debe estar
subrayado.
bool
Indica si el texto
debe estar en
cursiva.
bool
Especifica la
orientación del
documento
digitalizado.
int (LDD Constant)
Underline
Italic
Orientation
FALSE
Valor predeterminado:
FALSE
Valor predeterminado:
FALSE
La orientación debe tener uno de los
siguientes valores:
• LDD_ORIENTATION_PORTRAIT
• LDD_ORIENTATION_LANDSCAPE
Valor predeterminado:
• LDD_ORIENTATION_PORTRAIT
Direction
Especifica la
dirección del texto
que se agregará
a la imagen.
int (LDD Constant)
La dirección debe tener uno de los
siguientes valores:
• LDD_IMGTEXTDIR_HORIZONTAL
• LDD_IMGTEXTDIR_VERTICAL_DOWN
• LDD_IMGTEXTDIR_VERTICAL_UP
Valor predeterminado:
• LDD_IMGTEXTDIR_HORIZONTAL
Position
Especifica la
posición en la
página donde
se debe agregar
el texto.
int (LDD Constant)
Esta posición es relativa a la esquina
superior izquierda de la página, (0,0).
Debe ser uno de los siguientes valores:
•
•
•
•
•
•
•
•
•
•
LDD_IMGTEXTPOS_TOPLEFT
LDD_IMGTEXTPOS_TOPCENTER
LDD_IMGTEXTPOS_TOPRIGHT
LDD_IMGTEXTPOS_CENTERLEFT
LDD_IMGTEXTPOS_CENTER
LDD_IMGTEXTPOS_CENTERIGHT
LDD_IMGTEXTPOS_BOTTOMLEFT
LDD_IMGTEXTPOS_BOTTOMCENTER
LDD_IMGTEXTPOS_BOTTOMRIGHT
LDD_IMGTEXTPOS_CUSTOM
Valor predeterminado:
• LDD_IMGTEXTPOS_TOPLEFT
Customleft
int
Si se especifica que la posición sea
personalizada, hace referencia a la esquina
superior izquierda de la página a la que se
agregará el texto.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
143
Nombre
Descripción
Customtop
Allpages
Indica si el texto se
debe agregar a
todas las páginas
del documento.
Tipo de datos
Información adicional
int
Si se especifica que la posición sea
personalizada, hace referencia a la esquina
superior de la página a la que se agregará
el texto.
bool
Valor predeterminado:
TRUE.
Startpage
int
Si AllPages está definido en FALSE, se
trata del número de la primera página a la
que se agregará el texto.
Endpage
int
Si AllPages está definido en FALSE, se
trata del número de la última página a la
que se agregará el texto.
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Objetos de acción
144
Ejemplos de valores de dirección y posición
Para un documento digitalizado verticalmente:
Dirección: Vertical_Up
Posición: Center
Posición: Bottom Right
Dirección: Vertical_Down
Posición:TopLeft
Dirección: Horizontal
Posición: Center
Objetos de acción
145
Posición: Bottom Right
Dirección: Vertical_Down
Posición: TopLeft
Dirección: Horizontal
Dirección: Vertical_Up
Para un documento digitalizado horizontalmente:
ImageToHTML (Imágenes: convertir a HTML)
Objetivo: convierte las páginas especificadas del archivo de imagen a formato HTML.
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
input
Documento origen
de la acción.
doc
El documento de entrada debe estar en
formato TIFF, JPEG, PCX, DCX, PNG
o BMP.
output
Documento en el
que se escribe la
salida de la acción.
doc
AllPages
Especifica si se
deben convertir
todas las páginas
del documento de
entrada.
bool
Primera página
a convertir.
int
StartPage
Valor predeterminado:
TRUE
El valor sólo se utiliza cuando AllPages
está definido en FALSE.
Valor predeterminado:
0
EndPage
Última página
a convertir.
int
El valor sólo se utiliza cuando AllPages
está definido en FALSE. Si AllPages está
definido en FALSE, defina este parámetro
en 0 para indicar la última página.
Valor predeterminado:
0
TextType
Texto que se ha
utilizado en el
documento de
entrada.
int (LDD Constant) Para obtener más información, consulte
Tipos de texto en la página 149.
Valores válidos:
LDD_TEXTTYPE_NORMAL
LDD_TEXTTYPE_TYPEWRITER
LDD_TEXTTYPE_MATRIX
LDD_TEXTTYPE_OCRA
LDD_TEXTTYPE_OCRB
LDD_TEXTTYPE_MICR
Valor predeterminado:
LDD_TEXTTYPE_NORMAL
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
146
Nombre
Descripción
Tipo de datos
Información adicional
Language
Idioma del
documento que se
va a convertir.
int (LDD Constant) Valores válidos:
LDD_LANG_DANISH
LDD_LANG_DUTCH
LDD_LANG_ENGLISH
LDD_LANG_FINNISH
LDD_LANG_FRENCH
LDD_LANG_GERMAN
LDD_LANG_ITALIAN
LDD_LANG_NORWEGIAN
LDD_LANG_PORTUGUESE
LDD_LANG_SPANISH
LDD_LANG_SWEDISH
Valor predeterminado:
LDD_LANG_ENGLISH
Format
Tipo de salida
HTML que se
generará.
int (LDD Constant) Valores válidos:
LDD_HTMLFORMAT_32: utiliza el
estándar HTML 3.2 y conserva la mayor
parte del diseño del documento.
LDD_HTMLFORMAT_40: utiliza el
estándar HTML 4.0, incluyendo hojas de
estilo en cascada (CSS) para conservar
toda la presentación del documento.
Valor predeterminado:
LDD_HTMLFORMAT_40
Layout
Especifica qué parte int (LDD Constant)
de la presentación
del documento se
conserva en la
salida.
Valores válidos:
LDD_HTMLLAYOUT_TEXT: sólo se
conservan los párrafos en el texto
reconocido con el uso de la etiqueta <p>.
LDD_HTMLLAYOUT_PARAGRAPHS: en
el archivo HTML de salida se conservan
los párrafos y las fuentes del texto
reconocido. Se utiliza la etiqueta <p>.
LDD_HTMLLAYOUT_FULL: se conserva
la presentación completa de la página
origen utilizando tablas.
Valor predeterminado:
LDD_HTMLLAYOUT_FULL
KeepColor
Especifica si se
conservan los
colores originales
de texto y fondo.
bool
Valor predeterminado:
TRUE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
147
Nombre
Descripción
Tipo de datos
Información adicional
KeepPictures
Especifica si las
imágenes se
guardan con el
archivo HTML.
bool
Si se escriben las imágenes, se
guardarán en formato JPEG. Si no se
escriben, también se omiten las
referencias a ellas en los archivos HTML.
Valor predeterminado:
TRUE
SeparatePages
Si esta propiedad es bool
TRUE y se van a
convertir varias
páginas, se inserta
la etiqueta <HR>
entre las páginas.
Valor predeterminado:
TRUE
Los nombres en negrita son propiedades obligatorias.
Métodos:
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para indicar
si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su valor
predeterminado.
Objetos de acción
148
Tipos de texto
La propiedad de tipo de texto especifica el tipo de texto que se va a reconocer. Si hay varios tipos
en el documento, seleccione el que más predomine o utilice la acción ImageToText. Dicha acción
permite separar zonas y tipos de texto de zona.
En la tabla siguiente se describen los distintos tipos de texto admitidos.
Nombre
Descripción
LDD_TEXTTYPE_NORMAL
Se trata de un texto tipográfico común que producen las
impresoras láser o que se encuentra en libros y revistas.
LDD_TEXTTYPE_TYPEWRITER
Se trata del texto producido por una máquina de escribir.
LDD_TEXTTYPE_DOTMATRIX
Se trata del texto producido por una impresora matricial.
LDD_TEXTYPE_OCRA
Se trata de una fuente monoespaciada diseñada para el
reconocimiento óptico de caracteres. Los bancos y las
empresas de tarjetas de crédito la utilizan habitualmente.
Puede tener el siguiente aspecto:
LDD_TEXTYPE_OCRB
Se trata de una fuente diseñada para el reconocimiento
óptico de caracteres. Puede tener el siguiente aspecto:
LDD_TEXTTYPE_MICR
Este valor corresponde a un juego especial de caracteres
numéricos impresos con tintas magnéticas especiales.
Los caracteres MICR (reconocimiento de caracteres de
tinta magnética) se encuentran en muchos lugares,
incluyendo los cheques personales. Puede tener el
siguiente aspecto:
Objetos de acción
149
ImageToPDF (Imágenes: convertir a PDF [se pueden
realizar búsquedas])
Objetivo: convierte las páginas especificadas del archivo de imagen a formato PDF.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
input
Documento origen de
la acción.
doc
El documento de entrada debe estar en
formato TIFF, JPEG, PCX, DCX, PNG o BMP.
output
Documento en el que
se escribe la salida de
la acción.
doc
AllPages
Especifica si se deben bool
convertir todas las
páginas del
documento de entrada.
Valor predeterminado:
Primera página
a convertir.
El valor sólo se utiliza cuando AllPages
está definido en FALSE.
StartPage
int
TRUE
Valor predeterminado:
0
EndPage
Última página
a convertir.
int
El valor sólo se utiliza cuando AllPages
está definido en FALSE. Si AllPages está
definido en FALSE, defina este parámetro
en 0 para indicar la última página.
Valor predeterminado:
0
TextType
Texto que se ha
utilizado en el
documento de
entrada.
int (LDD
Constant)
Para obtener más información, consulte
Tipos de texto en la página 153.
Valores válidos:
LDD_TEXTTYPE_NORMAL
LDD_TEXTTYPE_TYPEWRITER
LDD_TEXTTYPE_MATRIX
LDD_TEXTTYPE_OCRA
LDD_TEXTTYPE_OCRB
LDD_TEXTTYPE_MICR
Valor predeterminado:
LDD_TEXTTYPE_NORMAL
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
150
Nombre
Descripción
Tipo de datos
Información adicional
Language
Idioma del documento
que se va a convertir.
int (LDD
Constant)
Valores válidos:
LDD_LANG_DANISH
LDD_LANG_DUTCH
LDD_LANG_ENGLISH
LDD_LANG_FINNISH
LDD_LANG_FRENCH
LDD_LANG_GERMAN
LDD_LANG_ITALIAN
LDD_LANG_NORWEGIAN
LDD_LANG_PORTUGUESE
LDD_LANG_SPANISH
LDD_LANG_SWEDISH
Valor predeterminado:
LDD_LANG_ENGLISH
Format
Tipo de salida PDF
que se generará.
int (LDD
Constant)
Valores válidos:
LDD_PDFFORMAT_TEXTONLY: el texto
reconocido se guarda como texto y las
imágenes como imágenes. Es posible que
el diseño del documento original (marcado
de fuente, fondo y presentación) no se
conserve completamente.
LDD_PDFFORMAT_TEXTONIMAGE:
toda la imagen se guarda como una
imagen. Las áreas de texto se guardan
como texto sobre la imagen.
LDD_PDFFORMAT_IMAGEONTEXT:
toda la imagen se guarda como una
imagen. El texto reconocido se coloca
debajo; se conserva toda la presentación
de la página y está disponible la búsqueda
de texto completo.
Valor predeterminado:
LDD_PDFFORMAT_IMAGEONTEXT
ReplaceUncertain Especifica si las
palabras reconocidas
se sustituirán por su
imagen.
bool
Esta propiedad únicamente se utiliza si el
formato es sólo texto o texto sobre imagen;
se ignora para imagen sobre texto.
Valor predeterminado:
TRUE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
151
Nombre
Descripción
Tipo de datos
Información adicional
KeepColor
Especifica si se
conservan los colores
originales de texto
y fondo.
bool
Esta propiedad únicamente se utiliza
si el formato es sólo texto; de lo contrario,
se ignora.
Valor predeterminado:
TRUE
PictureResolution Puntos por pulgada
(ppp) utilizados para
guardar imágenes.
int
PictureQuality
int
Calidad JPEG en
porcentaje utilizada
para guardar
imágenes.
Valor predeterminado:
72
Valor predeterminado:
50
Los nombres en negrita son propiedades obligatorias.
Métodos:
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para indicar
si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su valor
predeterminado.
Objetos de acción
152
Tipos de texto
La propiedad de tipo de texto especifica el tipo de texto que se va a reconocer. Si hay varios tipos
en el documento, seleccione el que más predomine o utilice la acción ImageToText. Dicha acción
permite separar zonas y tipos de texto de zona.
En la tabla siguiente se describen los distintos tipos de texto admitidos.
Nombre
Descripción
LDD_TEXTTYPE_NORMAL
Se trata de un texto tipográfico común que producen las
impresoras láser o que se encuentra en libros y revistas.
LDD_TEXTTYPE_TYPEWRITER
Se trata del texto producido por una máquina de escribir.
LDD_TEXTTYPE_DOTMATRIX
Se trata del texto producido por una impresora matricial.
LDD_TEXTYPE_OCRA
Se trata de una fuente monoespaciada diseñada para el
reconocimiento óptico de caracteres. Los bancos y las
empresas de tarjetas de crédito la utilizan habitualmente.
Puede tener el siguiente aspecto:
LDD_TEXTYPE_OCRB
Se trata de una fuente diseñada para el reconocimiento
óptico de caracteres. Puede tener el siguiente aspecto:
LDD_TEXTTYPE_MICR
Este valor corresponde a un juego especial de caracteres
numéricos impresos con tintas magnéticas especiales.
Los caracteres MICR (reconocimiento de caracteres de
tinta magnética) se encuentran en muchos lugares,
incluyendo los cheques personales. Puede tener el
siguiente aspecto:
Objetos de acción
153
ImageToRTF (Imágenes: convertir a RTF)
Objetivo: convierte las páginas especificadas del archivo de imagen a formato RTF. Lo puede
utilizar Microsoft Word o cualquier otro programa de procesamiento de textos que use este formato.
Grupo de instalación: módulo de imágenes
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento origen
de la acción.
doc
El documento de entrada debe
estar en formato TIFF, JPEG,
PCX, DCX, PNG o BMP.
Output
Documento en el
que se escribe la
salida de la acción.
doc
AllPages
Especifica si se
deben convertir
todas las páginas
del documento de
entrada.
bool
Primera página
a convertir.
int
StartPage
Valor predeterminado:
TRUE
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
Valor predeterminado:
0
EndPage
Última página
a convertir.
int
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
Si AllPages está definido en
FALSE, defina este parámetro en
0 para indicar la última página.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
154
Nombre
Descripción
Tipo de datos
Información adicional
TextType
Texto que se ha
utilizado en el
documento de
entrada.
int (LDD Constant)
Para obtener más información,
consulte Tipos de texto en la
página 157.
Valores válidos:
LDD_TEXTTYPE_NORMAL
LDD_TEXTTYPE_TYPEWRITER
LDD_TEXTTYPE_MATRIX
LDD_TEXTTYPE_OCRA
LDD_TEXTTYPE_OCRB
LDD_TEXTTYPE_MICR
Valor predeterminado:
LDD_TEXTTYPE_NORMAL
Language
Idioma del
documento que se
va a convertir.
int (LDD Constant)
Valores válidos:
LDD_LANG_DANISH
LDD_LANG_DUTCH
LDD_LANG_ENGLISH
LDD_LANG_FINNISH
LDD_LANG_FRENCH
LDD_LANG_GERMAN
LDD_LANG_ITALIAN
LDD_LANG_NORWEGIAN
LDD_LANG_PORTUGUESE
LDD_LANG_SPANISH
LDD_LANG_SWEDISH
Valor predeterminado:
LDD_LANG_ENGLISH
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
155
Nombre
Descripción
Tipo de datos
Información adicional
PaperSize
Tamaño del papel
que se utilizará para
la salida generada.
int (LDD Constant)
Para obtener los mejores
resultados, debe aproximarse
lo máximo posible al tamaño del
papel del documento de entrada.
Valores válidos:
LDD_PAPERSIZE_A3
LDD_PAPERSIZE_A4
LDD_PAPERSIZE_A5
LDD_PAPERSIZE_JISB4
LDD_PAPERSIZE_JISB5
LDD_PAPERSIZE_LEGAL
LDD_PAPERSIZE_LETTER
LDD_PAPERSIZE_11X17
Valor predeterminado:
LDD_PAPERSIZE_LETTER
KeepColor
KeepPictures
Especifica si se
conservan los
colores originales
de texto y fondo.
Bool
Especifica si las
imágenes se
guardan con el
archivo RTF.
Bool
Valor predeterminado:
TRUE
Si deben guardar las imágenes,
se guardarán en el archivo RTF
generado; no estarán en archivos
independientes.
Valor predeterminado:
TRUE
Los nombres en negrita son propiedades obligatorias.
Métodos:
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para indicar
si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su valor
predeterminado.
Objetos de acción
156
Tipos de texto
La propiedad de tipo de texto especifica el tipo de texto que se va a reconocer. Si hay varios tipos
en el documento, seleccione el que más predomine o utilice la acción ImageToText. Dicha acción
permite separar zonas y tipos de texto de zona.
En la tabla siguiente se describen los distintos tipos de texto admitidos.
Nombre
Descripción
LDD_TEXTTYPE_NORMAL
Se trata de un texto tipográfico común que producen las
impresoras láser o que se encuentra en libros y revistas.
LDD_TEXTTYPE_TYPEWRITER
Se trata del texto producido por una máquina de escribir.
LDD_TEXTTYPE_DOTMATRIX
Se trata del texto producido por una impresora matricial.
LDD_TEXTYPE_OCRA
Se trata de una fuente monoespaciada diseñada para el
reconocimiento óptico de caracteres. Los bancos y las
empresas de tarjetas de crédito la utilizan habitualmente.
Puede tener el siguiente aspecto:
LDD_TEXTYPE_OCRB
Se trata de una fuente diseñada para el reconocimiento
óptico de caracteres. Puede tener el siguiente aspecto:
LDD_TEXTTYPE_MICR
Este valor corresponde a un juego especial de caracteres
numéricos impresos con tintas magnéticas especiales.
Los caracteres MICR (reconocimiento de caracteres de
tinta magnética) se encuentran en muchos lugares,
incluyendo los cheques personales. Puede tener el
siguiente aspecto:
Objetos de acción
157
ImageToText (Imágenes: convertir a texto)
Objetivo: convierte las páginas especificadas del archivo de imagen a formato de texto. También
se puede utilizar para convertir únicamente zonas de la imagen.
Grupo de instalación: módulo OCR
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
input
Documento origen de la
acción.
doc
El documento de entrada debe estar
en formato TIFF, JPEG, PCX, DCX,
PNG o BMP.
output
Documento en el que
se escribe la salida de
la acción.
doc
Si no se especifica ninguna zona,
todo el documento de entrada se
convertirá a texto y estará disponible.
Si no se especifica ninguna zona,
este documento estará vacío.
AllPages
Especifica si se deben
convertir todas las
páginas del documento
de entrada.
bool
Valor predeterminado:
Primera página
a convertir.
int
StartPage
TRUE
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
Valor predeterminado:
0
EndPage
Última página
a convertir.
int
El valor sólo se utiliza cuando
AllPages está definido en FALSE.
Si AllPages está definido en FALSE,
defina este parámetro en 0 para
indicar la última página.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
158
Nombre
Descripción
Tipo de datos Información adicional
TextType
Texto que se ha
utilizado en el
documento de entrada.
int (LDD
Constant)
Si no se especifica ninguna zona,
se trata del tipo de texto de todo el
documento. Si se especifican zonas,
se trata del tipo de texto
predeterminado de cualquier zona
que no tenga especificado uno.
Para obtener más información,
consulte Tipos de texto en la
página 162.
Valores válidos:
LDD_TEXTTYPE_NORMAL
LDD_TEXTTYPE_TYPEWRITER
LDD_TEXTTYPE_MATRIX
LDD_TEXTTYPE_OCRA
LDD_TEXTTYPE_OCRB
LDD_TEXTTYPE_MICR
Valor predeterminado:
LDD_TEXTTYPE_NORMAL
Language
Idioma del documento
que se va a convertir.
int (LDD
Constant)
Si no se especifica ninguna zona,
se trata del idioma de todo el
documento. Si se especifican zonas,
se trata del idioma predeterminado
de cualquier zona que no tenga
especificado uno.
Valores válidos:
LDD_LANG_DANISH
LDD_LANG_DUTCH
LDD_LANG_ENGLISH
LDD_LANG_FINNISH
LDD_LANG_FRENCH
LDD_LANG_GERMAN
LDD_LANG_ITALIAN
LDD_LANG_NORWEGIAN
LDD_LANG_PORTUGUESE
LDD_LANG_SPANISH
LDD_LANG_SWEDISH
Valor predeterminado:
LDD_LANG_ENGLISH
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
159
Nombre
Descripción
Tipo de datos Información adicional
OneLine
Especifica si cada
párrafo de texto se
exporta como una línea
de texto.
bool
Si es FALSE, las líneas del texto
del párrafo se conservan en líneas
independientes. Si es TRUE, cada
párrafo se exporta como una línea de
texto. Esta propiedad se ignora si no
se especifica ninguna zona.
Valor predeterminado:
FALSE
SeparateParagraphs
Especifica si se inserta
una línea vacía entre
párrafos.
bool
Esta propiedad se ignora si no se
especifica ninguna zona.
Valor predeterminado:
FALSE
PageBreaks
AppendEOF
Especifica si se insertan bool
símbolos de salto de
página (0x12) entre las
páginas si hay varias en
el documento de
entrada.
Especifica si se inserta
el símbolo EOF al final
del documento de
entrada.
bool
Esta propiedad se ignora si no se
especifica ninguna zona.
Valor predeterminado:
FALSE
Esta propiedad se ignora si no
se especifica ninguna zona.
Valor predeterminado:
FALSE
ZoneResults
Contiene los resultados
de las áreas de texto de
las zonas.
stringarray
Si se especifican zonas, después
de ejecutar el método Go, el texto de
cada una es un elemento de la matriz
de cadenas.
Si no se especifica ninguna zona,
está vacía y no se debe utilizar.
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve su
valor predeterminado.
Objetos de acción
160
Sintaxis
Descripción
void AddZone(int left, int top, int right, int bottom
[, int lang, int texttype])
Agrega un rectángulo específico (zona) que se
leerá del documento de entrada. Las
coordenadas de la zona se indican en píxeles,
siendo (0,0) la esquina superior izquierda del
documento. Si no se especifica idioma o tipo
de texto, los valores asignados a dichas
propiedades de acción se utilizan para la zona.
Los resultados están disponibles en la propiedad
ZoneResults después de llamar al método Go.
Parámetros:
left: coordenada x superior de la zona en píxeles
top: coordenada y superior de la zona en píxeles
right: coordenada x inferior de la zona en píxeles
bottom: coordenada y inferior de la zona en
píxeles
lang: idioma de la zona especificada; si se indica,
es una constante LDD y debe ser una de las
constantes de idioma definidas anteriormente.
Si no se especifica, se utiliza el valor de la
propiedad language.
texttype: tipo del texto de la zona especificada;
si se indica, es una constante LDD y debe ser
una de las constantes de tipo de texto (texttype)
definidas anteriormente. Si no se especifica, se
utiliza el valor de la propiedad texttype.
Devuelve:
Nada
void ClearZones()
Elimina todas las zonas de la lista de zonas. Se
puede llamar para forzar que se convierta toda la
página.
Parámetros:
Ninguno
Devuelve:
Nada
Objetos de acción
161
Tipos de texto
La propiedad de tipo de texto especifica el tipo de texto que se va a reconocer. Si hay varios tipos
en el documento, seleccione el que más predomine o utilice la acción ImageToText. Dicha acción
permite separar zonas y tipos de texto de zona.
En la tabla siguiente se describen los distintos tipos de texto admitidos.
Nombre
Descripción
LDD_TEXTTYPE_NORMAL
Se trata de un texto tipográfico común que producen las
impresoras láser o que se encuentra en libros y revistas.
LDD_TEXTTYPE_TYPEWRITER
Se trata del texto producido por una máquina de escribir.
LDD_TEXTTYPE_DOTMATRIX
Se trata del texto producido por una impresora matricial.
LDD_TEXTYPE_OCRA
Se trata de una fuente monoespaciada diseñada para el
reconocimiento óptico de caracteres. Los bancos y las
empresas de tarjetas de crédito la utilizan habitualmente.
Puede tener el siguiente aspecto:
LDD_TEXTYPE_OCRB
Se trata de una fuente diseñada para el reconocimiento
óptico de caracteres. Puede tener el siguiente aspecto:
LDD_TEXTTYPE_MICR
Este valor corresponde a un juego especial de caracteres
numéricos impresos con tintas magnéticas especiales.
Los caracteres MICR (reconocimiento de caracteres de
tinta magnética) se encuentran en muchos lugares,
incluyendo los cheques personales. Puede tener el
siguiente aspecto:
Objetos de acción
162
LaunchExe (Iniciar otro programa)
Objetivo: inicia un archivo ejecutable o un programa de procesamiento por lotes desde el servicio
Document Server. Esta función se puede utilizar para proporcionar funcionalidad personalizada
que no ofrecen los módulos suministrados. Por ejemplo, puede iniciar herramientas o utilidades
anteriores utilizadas en una empresa. El módulo de inicio sigue las asociaciones de archivo si se
especifica un documento en lugar de un archivo ejecutable.
Grupo de instalación: Document Server
•
•
Para iniciar una aplicación que no sea una aplicación de consola Win32, el servicio
Document Server se debe configurar para conectarse con una cuenta de usuario que tenga
los privilegios de red necesarios.
Para iniciar una aplicación que requiera servicios de red, el servicio Document Server se
debe configurar para conectarse con una cuenta de usuario que tenga los privilegios de red
necesarios.
Para configurar el servicio Document Server para conectarse como un usuario (debe
conectarse como administrador para realizar este procedimiento):
Windows NT:
1
Haga clic en Inicio Æ Configuración Æ Panel de control Æ Servicios.
2
Seleccione el servicio Lexmark Document Server y, a continuación, haga clic en Inicio.
3
Haga clic en Esta cuenta y seleccione el nombre del usuario que tiene los derechos
de acceso deseados. Escriba la contraseña del usuario y confirme.
4
Haga clic en Aceptar.
Nota: para que el servicio se conecte como el usuario especificado, debe detener e iniciar
el servicio Document Server o reiniciar el ordenador.
Windows 2000/XP:
1
Vaya a Inicio Æ Configuración Æ Panel de control Æ Herramientas
administrativas Æ Servicios.
2
Haga doble clic en el servicio Lexmark Document Server.
3
Seleccione la ficha Iniciar sesión.
4
Haga clic en Esta cuenta y seleccione el nombre del usuario que tiene los derechos
de acceso deseados. Escriba la contraseña del usuario y confirme.
5
Haga clic en Aceptar.
Nota: para que el servicio se conecte como el usuario especificado, debe detener e iniciar
el servicio Document Server o reiniciar el ordenador.
Objetos de acción
163
–
–
Si necesita ver la interfaz gráfica de usuario de la aplicación que va a iniciar, conéctese
como una cuenta de sistema local y seleccione Permitir al servicio interactuar con el
escritorio.
No inicie aplicaciones que requieran entrada de datos por parte del usuario. Document
Server se ejecuta como un servicio, por lo que no hay disponible una interfaz para
solicitar datos o acciones al usuario. La aplicación debe llevar a cabo una acción y salir
sin solicitar datos al usuario.
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
Input
Documento origen de la
acción.
doc
Output
Contiene el documento de
salida generado por la
acción.
doc
A esta propiedad sólo se puede
acceder después de llamar al
método Go.
CommandLine
Línea de comandos que
contiene la aplicación que
se ejecutará. La aplicación
se debe especificar con una
ruta de acceso completa.
string
La línea de comandos puede
incluir una de las cuatro macros
que se expanden en tiempo de
ejecución a las rutas de acceso
de los documentos de entrada
o de salida. Son las siguientes:
%i
%I
%o
%O
Para obtener más información,
Macros de entrada/salida en la
página 166. Las macros van
precedidas de un único carácter
%. Escriba %% para especificar
un carácter % literal.
WorkingDirectory
Directorio que contiene la
aplicación a iniciar o los
archivos relacionados que
necesita la aplicación.
string
De forma predeterminada, está
sin definir y sólo las variables de
entorno del sistema y las rutas
de acceso están disponibles
para la aplicación.
WaitUntilComplete
Esperar a que finalice la
aplicación iniciada antes de
continuar el proceso de este
trabajo. Puede resultar útil
para aplicaciones que
emplean mucho tiempo.
bool
Si el valor es FALSE, no se
puede detectar ningún error
de la aplicación iniciada.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
164
Valor predeterminado:
TRUE
Nombre
Descripción
Tipo de datos Información adicional
Timeout
Límite de tiempo en
milisegundos para la
finalización de la aplicación
especificada.
int
Si la aplicación no termina en el
tiempo especificado, se informa
de un error. El valor 0 indica que
no hay tiempo de espera.
Valor predeterminado:
0
KillOnTimeout
Termina la aplicación si no
ha finalizado antes del límite
del tiempo de espera.
bool
Sólo se utiliza si el parámetro
Timeout tiene un valor mayor
que 0. Si el valor es FALSE, la
aplicación seguirá ejecutándose
después del límite de tiempo de
espera, pero el trabajo
continuará el procesamiento con
el siguiente script. Si se termina
una aplicación, el sistema se
puede volver inestable; por lo
tanto, tenga precaución si la
aplicación utiliza recursos del
sistema.
Valor predeterminado:
FALSE
ReturnValue
Valor de devolución de la
aplicación después de
terminar.
int
Sólo está disponible si
WaitUntilComplete se ha
definido en TRUE y está
accesible después de que
vuelva el método Go.
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Nota: si la aplicación a iniciar tiene una ruta de acceso o un nombre de archivo largo,
la línea de comandos se debe poner entre comillas. Con el fin de utilizar comillas
en el parámetro CommandLine, se debe anteponer el símbolo ^ a las comillas.
De este modo se indica que son comillas literales. De lo contrario, las comillas se
interpretarían como parte de la línea de comandos. Por ejemplo: ^"C:\Archivos
de programa\Nuevo software\Interesante aplicación.exe^"
Objetos de acción
165
Macros de entrada/salida
%i: inicia la aplicación especificada por cada archivo del documento de entrada. Esto permite que
se procesen varios documentos y se pueden iniciar varias copias de la aplicación. Cada instancia de
la aplicación utiliza los valores de espera de finalización, tiempo de espera y detección de errores.
La macro %i se expande a cada nombre de archivo de documento, entre comillas.
%I: inicia la aplicación especificada una vez, pasando todos los archivos que componen el
documento de entrada en una sola línea de comandos. Los archivos del documento están entre
comillas y separados por un único carácter de espacio. Esto resulta útil para aplicaciones MDI
o para aplicaciones que tienen que procesar todo el documento como una sola unidad.
%o: se puede utilizar junto con el indicador "%i" y crea un archivo de salida independiente en el
documento de salida por cada uso de la aplicación iniciada. Esto resulta útil para el procesamiento
por lotes del documento como un conjunto de entidades independientes. Se produce un archivo
de salida por cada archivo de entrada.
%O: reutiliza un único archivo de salida, sin importar el número de veces que la aplicación iniciada
se ejecute para el documento actual. De este modo, la salida de un documento de varios archivos
se puede clasificar en uno solo.
Inicio de comandos de DOS o archivos por lotes
Para iniciar un comando de DOS o un archivo por lotes con esta acción, se debe anteponer
"cmd.exe /c". De este modo se inicia una nueva instancia del intérprete de comandos que ejecuta
el comando de DOS o el archivo por lotes. Por ejemplo, "cmd.exe /c storeit.bat".
Comprobación de los valores devueltos
Para comprobar el código de devolución del programa iniciado, la propiedad WaitUntilComplete
se debe definir en TRUE. El método Go no volverá hasta que el programa haya terminado. Cuando
vuelva el método Go, se puede acceder al valor devuelto mediante la propiedad ReturnValue.
Si la aplicación iniciada es un archivo por lotes, se puede definir el parámetro ERRORLEVEL para
indicar su valor de devolución. Si el archivo por lotes llama a otros programas, no están disponibles
los códigos de devolución de los programas llamados; sólo está disponible el código de devolución
definido por el archivo por lotes. Consulte la documentación de Windows sobre los archivos por lotes
para obtener más información sobre el uso de ERRORLEVEL.
Para todos los demás tipos de aplicaciones, normalmente definen un código de devolución cuando
terminan. Consulte la documentación del programa iniciado para determinar el tipo de valores
devueltos que proporciona.
Objetos de acción
166
MergeForm (Formularios: combinar en PDF)
Objetivo: combinar los valores del dataset en un Formset y generar un PDF del formulario
combinado.
Requisitos previos: el formset se debe haber cargado mediante Document Producer y el dataset
debe tener el formato correcto.
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Datos que se
combinarán en el
formset.
dataset
Output
Contiene el
documento de
salida generado por
el documento.
doc
A esta propiedad sólo se puede
acceder después de llamar al
método Go. Este documento
estará en formato PDF.
printoptions
Contiene las
opciones de
impresión
especificadas
en el formset.
printoptions
A esta propiedad sólo se puede
acceder después de llamar al
método Go.
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
167
Acciones de ODBC
Introducción
En general, las acciones de ODBC (conexión abierta de bases de datos) realizan lo siguiente:
1 Se establece una conexión a la base de datos utilizando el nombre de usuario/contraseña
especificados.
2 Se consulta la base de datos para determinar los tipos y los tamaños de los datos de la
columna especificada.
3 Si se especifica el modo de transacciones, se inicia una nueva transacción.
4 Se ejecuta cualquier operación de apertura personalizada.
5 Se realiza el cuerpo de la acción concreta (ODBCWrite u ODBCRead), incluyendo cualquier
personalización o valores predeterminados internos.
6 Se ejecuta cualquier operación de cierre personalizada.
7 Se cierra cualquier transacción abierta.
Las acciones de la base de datos pueden leer valores de todos los tipos de datos SQL (lenguaje de
consulta estructurado) predefinidos, así como escribirlos en ellos. Según el tipo de datos, se utiliza
el controlador ODBC para convertir los datos de formato binario o de carácter al tipo de destino. Las
conversiones a tipos de datos específicos de la base de datos o definidos por el usuario se realizan
siempre que el controlador admita una conversión de datos de caracteres o el tipo definido por el
usuario se basa en un tipo SQL predefinido con una conversión existente.
No se admite la sintaxis SQL específica de la base de datos, sino la sintaxis estándar de ODBC.
Por lo tanto, los scripts escritos deben ser independientes de la base de datos utilizada.
Las llamadas personalizadas permiten realizar prácticamente cualquier operación de base de datos
desde la acción. Sin embargo, requieren estar bastante familiarizado con la sintaxis SQL y el uso
de la base de datos.
Para obtener información sobre los requisitos y la configuración de software, la compatibilidad
de los documentos de base de datos e información relativa a las columnas de fecha y hora,
Referencia de ODBC en la página 227.
Objetos de acción
168
ODBCWrite (Base de datos ODBC: escribir)
Objetivo: esta acción agrega una nueva fila a la base de datos y tabla especificadas. ODBCWrite
admite columnas de todos los tipos de datos SQL estándar, además de tipos adicionales específicos
de la base de datos y definidos por el usuario, siempre que la base de datos admita las funciones
de conversión necesarias. Puede incrustar datos de documento en la base de datos, siempre que
la base de datos admita objetos grandes binarios (BLOB) y el controlador ODBC correspondiente
exponga esta funcionalidad. Se proporcionan valores de módulo avanzados para administradores
de base de datos con el fin de volver a configurar el módulo para llamar a sus propios
procedimientos almacenados personalizados.
Grupo de instalación: ODBC
Uso avanzado
La operación predeterminada de ODBCWrite, insertar una única fila en una sola tabla, sólo resulta
adecuada para los esquemas de base de datos más simples. Mediante la llamada a sentencias SQL
personalizadas, como un procedimiento almacenado, el administrador de la base de datos puede
salvar esta limitación. Por ejemplo, una transacción podría crear una tabla de base de datos
temporal mediante una llamada a un procedimiento almacenado en OpenSQLCall. La operación
predeterminada de la acción podría escribir una fila en esta tabla. A continuación, CloseSQLCall
podría llamar a otro procedimiento avanzado que migrase las filas de la tabla temporal al cuerpo de
la base de datos y, después, eliminar la tabla temporal (o, lo que resulta más eficaz, borrar todas sus
filas para utilizarla posteriormente). Mediante el uso del modo de transacciones, la operación se
realiza de modo automático y varios usuarios de la acción ODBCWrite no entran en conflicto al
acceder a la tabla temporal.
CustomSQLCall ofrece la flexibilidad más avanzada de esta acción. Si no se suministra
CustomSQLCall, la acción ejecuta la siguiente sentencia SQL:
INSERT INTO {nombre de tabla} ({lista de columnas}) VALUES (?, ?, .....?)
donde la lista de columnas consta de los nombres de columna suministrados en las llamadas
de AssignValue. Se utiliza el carácter "?" como marcador de parámetro de los valores
correspondientes. Observe que los caracteres "?" están enlazados por la acción a los datos
subyacentes con el fin de garantizar que en cada valor de datos se realiza la conversión correcta
de tipo de datos y se transmite a la base de datos del modo más eficaz posible. Si desea escribir
su propia propiedad CustomSQLCall, asegúrese de incluir exactamente el número correcto de
marcadores de parámetro "?" en el orden especificado. Asimismo, asegúrese de especificar una
tabla que contenga columnas de los tipos de datos correctos, incluso si su propiedad
CustomSQLCall no se utiliza directamente en esa tabla. La propiedad CustomSQLCall de
ODBCWrite no debe devolver datos, pero se identifican los errores generados por la llamada.
Para escribir datos NULL, no especifique dicho nombre de columna en el script. Las columnas que
no se especifiquen utilizarán los valores predeterminados de la base de datos.
Objetos de acción
169
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
DataSource
Nombre del origen
de datos ODBC al
que se conectará.
string
El origen de datos se debe
configurar en el subprograma
Orígenes de datos ODBC del
Panel de control.
TableName
Nombre de la tabla
que se utilizará en
el origen de datos.
string
Esta propiedad se requiere
incluso si los valores de
personalización avanzados
utilizan una consulta o un
procedimiento almacenado
en lugar de una tabla física.
La tabla señalada debe incluir
las columnas correctas con
los tipos de datos correctos.
Para el uso básico, las
operaciones de base de datos
insertan o seleccionan filas en
la tabla indicada. Para el uso
avanzado, proporcione una
tabla prototipo sin datos pero
con nombres y tipos de datos
de columna correctos.
LogonName
Identidad que
utilizará el servidor
cuando se conecte
a la base de datos.
string
Se indica además de cualquier
conexión de red requerida. Si
no se especifica, se utiliza el
valor predeterminado según
lo indicado en el subprograma
Orígenes de datos ODBC.
LogonPassword
Contraseña para
conectarse a la
base de datos.
string
Si no se especifica, se utiliza
el valor predeterminado para
el origen de datos según lo
indicado en el subprograma
Orígenes de datos ODBC.
ExtraConnectionSettings
(Avanzado)
Especifica valores
adicionales para
configurar el origen
de datos ODBC en
tiempo de
ejecución.
string
Los valores disponibles
normalmente se enumeran
en el panel avanzado del
subprograma Orígenes de
datos ODBC. Los valores
especificados aquí anularán
los valores predeterminados
definidos en el origen de datos.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
170
Nombre
Descripción
Tipo de datos
Información adicional
OpenSQLCall
(Avanzado)
Especifica una
llamada SQL, como
un procedimiento
almacenado, al que
desea que llame la
acción al comienzo
de cada invocación
de esta acción.
string
Permite preparar la base de
datos para recibir los datos
o realizar operaciones de
seguimiento. Los
procedimientos almacenados
que se utilicen aquí no deben
devolver datos.
CustomSQLCall
(Avanzado) Permite string
especificar una
llamada SQL, como
un procedimiento
almacenado, que
se invoca en lugar
de la
predeterminada.
Para obtener información sobre
la personalización avanzada,
Uso avanzado en la
página 169.
Si no se especifica ninguna
llamada, se proporciona un
valor predeterminado adecuado
para cada una de las acciones
que realiza una operación
simple de inserción o selección.
Las acciones de lectura y
escritura tienen requisitos
distintos para la sentencia SQL
suministrada aquí.
Para obtener información sobre
la personalización avanzada,
Uso avanzado en la
página 169.
Valor predeterminado:
Insertar registros en la tabla
especificada
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
171
Nombre
Descripción
Tipo de datos
Información adicional
CloseSQLCall
(Avanzado)
Especifica una
llamada SQL, como
un procedimiento
almacenado, que
se invoca al final de
cada invocación de
esta acción.
string
Permite limpiar la base de datos
después de recibir los datos
(como fijar las tablas de
normalización) o realizar
operaciones de seguimiento.
Los procedimientos
almacenados que se utilicen
aquí no deben devolver datos.
Valor predeterminado:
Ninguno
UseTransactedMode
Especifica si todas
las llamadas SQL,
incluidas las
personalizadas,
que realiza la
acción se agrupan
como una única
transacción.
bool
De este modo se garantiza la
integridad de los datos si se
producen errores o si varios
usuarios acceden a las
entradas de la base de datos
que está manipulando, pero con
un coste importante en el
rendimiento.
No defina en TRUE esta opción
si otros usuarios o aplicaciones
requieren acceso en tiempo
real a las tablas de base de
datos que está manipulando.
Defina esta operación si se
requiere integridad de los
datos, si es posible que varias
aplicaciones, incluyendo
diferentes trabajos del servidor,
requieran acceso a los mismos
datos y si su DBMS lo admite.
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
172
Métodos
Métodos
Comentarios
bool Go()
Define la acción en la operación.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
bool AssignValue(string columnName, int value)
AssignValue() asocia la columna de base de
datos especificada al valor indicado. Acepta
bool AssignValue(string columnName, real value) las propiedades de "valor" de tipo entero, real,
bool AssignValue(string columnName, string value) cadena, booleano o documento. La fila no se
inserta realmente en la base de datos hasta que
bool AssignValue(string columnName, bool value) se llama el método Go() de ODBCWrite. Su valor
devuelto indica si la operación se ha realizado
bool AssignValue(string columnName, doc value) correcta o incorrectamente (true o false). El
método AssignValue() se puede llamar para
tantas columnas como sea necesario para una
determinada tabla y se debe llamar una vez
como mínimo antes de llamar Go().
Notas:
•
Los nombres de columna que no existan se ignoran y las advertencias se escribirán en el archivo de
registro del servidor. De este modo, los scripts son independientes del esquema de la base de datos.
•
Como mínimo se debe escribir una columna en una fila nueva; de no hacerlo, se producirá un error en
la acción. La acción aplicará los valores predeterminados según lo definido en la base de datos para
todas las columnas sin especificar. Los datos deben adherirse a todas las restricciones y referencias
cruzadas de la base de datos.
•
La acción debe rellenar todas las columnas definidas como obligatorias en el esquema de tablas de la
base de datos y que no proporcionen los valores predeterminados o los desencadenadores de la base
de datos; de no hacerlo, se producirá un error.
•
La acción realiza conversiones de tipo adecuadas de los datos de entrada que coincidan con el tipo de
datos del campo de destino. Si no hay disponible ninguna conversión de tipo relevante, se produce un
error en la acción. Si es necesario truncar los datos para que quepan en un campo, se realiza el
truncamiento y la acción escribe una advertencia en el archivo de registro.
Objetos de acción
173
ODBCRead (Base de datos ODBC: leer)
Objetivo: esta acción lee una fila, o varias filas, de la base de datos y tabla especificadas mediante
ODBC. Admite campos de todos los tipos de datos SQL estándar, además de tipos adicionales
específicos del origen de datos y definidos por el usuario, siempre que el DBMS admita las
funciones de conversión necesarias. Puede leer datos de documento incrustados de la base de
datos, siempre que el DBMS subyacente admita objetos grandes binarios (BLOB) y el controlador
ODBC correspondiente exponga esta funcionalidad. Las filas se pueden seleccionar de la base de
datos mediante compatibilidad completa de consultas SQL, ordenación y otros criterios de
selección. Se pueden leer columnas determinadas de los resultados devueltos. Se proporcionan
valores de módulo avanzados para administradores de base de datos con el fin de volver a
configurar el módulo para llamar a sus propios procedimientos almacenados personalizados.
Grupo de instalación: ODBC
Uso avanzado
La operación predeterminada de lectura de resultados de una única tabla con una única consulta
SQL debe ser suficiente para los esquemas de base de datos simples. Se pueden realizar consultas
avanzadas como parte de la cláusula WHERE, pero los resultados devueltos siempre deben
proceder de una única tabla. Mediante la llamada a sentencias SQL personalizadas, como un
procedimiento almacenado, el administrador de la base de datos puede salvar esta limitación.
Por ejemplo, una transacción podría crear una tabla de base de datos temporal mediante una
llamada a un procedimiento almacenado en OpenSQLCall y rellenar dicha tabla con los resultados
de una consulta SQL complejo o unión de tablas. La operación predeterminada de la acción podría
leer filas de esta tabla. A continuación, CloseSQLCall podría llamar a otro procedimiento
almacenado que eliminara la tabla temporal (o, lo que resulta más eficaz, que borrara todas sus filas
para utilizarla posteriormente). Mediante el uso del modo de transacciones, la operación se realiza
de modo automático y varios usuarios de la acción ODBCRead no entran en conflicto al acceder a la
tabla temporal.
CustomSQLCall ofrece la flexibilidad más avanzada de esta acción. Si no se suministra
CustomSQLCall, la acción ejecuta la siguiente sentencia SQL:
SELECT {DISTINCT} {lista de columnas} FROM {nombre de tabla} {WHERE cláusula where}
donde la lista de columnas es la lista de las columnas en el orden especificado por las propiedades
DataColumns y DocumentColumns. DISTINCT es opcional; la cláusula WHERE es opcional pero
normalmente se proporciona. Si desea escribir su propia propiedad CustomSQLCall, asegúrese de
devolver conjuntos de filas que contengan las columnas especificadas en el orden adecuado y con
los tipos de datos correctos. Asegúrese también de especificar una tabla que contenga columnas de
los tipos de datos correctos, incluso si su propiedad CustomSQLCall no se utiliza directamente en
esa tabla. La propiedad CustomSQLCall de ODBCRead debe devolver conjuntos de filas del mismo
modo que la sentencia SELECT de SQL. Se identifican los errores generados por la llamada.
Objetos de acción
174
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
DataSource
Nombre del origen de
datos ODBC al que se
conectará.
string
El origen de datos se debe
configurar en el subprograma
Orígenes de datos ODBC del Panel
de control.
TableName
Nombre de la tabla que
se utilizará en el origen
de datos.
string
Tenga en cuenta que esta propiedad
se requiere incluso si los valores de
personalización avanzados utilizan
una consulta o un procedimiento
almacenado en lugar de una tabla
física. La tabla señalada debe incluir
las columnas correctas con los tipos
de datos correctos.
Para el uso básico, las operaciones
de base de datos seleccionan filas
de la tabla indicada. Para el uso
avanzado, la operación de base
de datos proporciona una tabla
prototipo sin datos pero con
nombres y tipos de datos de
columna correctos.
LogonName
Identidad que utilizará
el servidor cuando se
conecte a la base de
datos.
string
Se indica además de cualquier
conexión de red requerida. Si
no se especifica, se utiliza el valor
predeterminado según lo indicado
en el subprograma Orígenes de
datos ODBC.
LogonPassword
Contraseña para
conectarse a la base
de datos.
string
Si no se especifica, se utiliza el valor
predeterminado para el origen de
datos según lo indicado en el
subprograma Orígenes de datos
ODBC.
ExtraConnectionSettings (Avanzado) Especifica
valores adicionales
para configurar el
origen de datos
ODBC en tiempo
de ejecución.
string
Los valores disponibles
normalmente se enumeran en el
panel avanzado del subprograma
Orígenes de datos ODBC. Los
valores especificados aquí anularán
los valores predeterminados
definidos en el origen de datos.
OpenSQLCall
string
Permite preparar la base de datos
para recibir los datos o realizar
operaciones de seguimiento. Los
procedimientos almacenados que se
utilicen aquí no deben devolver datos.
(Avanzado) Especifica
una llamada SQL,
como un procedimiento
almacenado, al que
desea que llame la
acción al comienzo de
cada invocación de
esta acción.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
175
Para obtener información sobre la
personalización avanzada, Uso
avanzado en la página 174.
Nombre
Descripción
Tipo de datos
Información adicional
CustomSQLCall
(Avanzado) Permite
especificar una
llamada SQL, como un
procedimiento
almacenado, que se
invocará en lugar de la
predeterminada.
string
Si no se especifica ninguna llamada,
se proporciona un valor
predeterminado adecuado para
cada una de las acciones que
realiza una operación simple de
inserción o selección. Las acciones
de lectura y escritura tienen
requisitos distintos para la sentencia
SQL suministrada aquí.
Para obtener información sobre la
personalización avanzada, Uso
avanzado en la página 174.
CloseSQLCall
(Avanzado) Especifica
una llamada SQL,
como un procedimiento
almacenado, que se
invocará al final de
cada invocación de
esta acción.
string
Permite limpiar la base de datos
después de recibir los datos (como
fijar las tablas de normalización) o
realizar operaciones de seguimiento.
Los procedimientos almacenados
que se utilicen aquí no deben
devolver datos.
Para obtener información sobre la
personalización avanzada, Uso
avanzado en la página 174.
Valor predeterminado:
Ninguno
UseTransactedMode
(Avanzado) Especifica
si todas las llamadas
SQL, incluidas las
personalizadas, que
realiza la acción se
agrupan como una
única transacción.
bool
De este modo se garantiza la
integridad de los datos si se
producen errores o si varios
usuarios acceden a las entradas
de la base de datos que está
manipulando, pero con un coste
importante en el rendimiento.
No defina en TRUE esta opción si
otros usuarios o aplicaciones
requieren acceso en tiempo real a
las tablas de base de datos que está
manipulando.
Defina esta operación si se requiere
integridad de los datos, si es posible
que varias aplicaciones, incluyendo
diferentes trabajos del servidor,
requieran acceso a los mismos
datos y si su DBMS lo admite.
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
176
Nombre
Descripción
Tipo de datos
Información adicional
DataColumns
Lista delimitada por
comas de los nombres
de las columnas que
contienen los datos
que se devolverán
como una cadena.
string
Cada columna especificada debe
existir en la tabla especificada y
debe tener un formato de datos que
permita la conversión de cadena.
Se definirá una variable en el valor
de cada columna. El nombre de la
variable será el mismo que el nombre
de columna.
El valor predeterminado es no
seleccionar columnas de datos, pero
se debe especificar una columna
como mínimo en los valores
DataColumns o DocumentColumns.
DocumentColumns
Lista delimitada por
comas de los nombres
de las columnas que
contienen los datos
que se escribirán en
archivos.
string
Cada columna indicada debe existir
en la tabla especificada y debe tener
un formato de datos que requiera la
recuperación de archivos, como
objetos binarios o texto de longitud
arbitraria. Cada nombre de columna
puede recibir una extensión
opcional, especificando la extensión
que se asignará a los archivos
recién creados.
Se definirá una variable para hacer
referencia a un documento que
contenga los datos de la columna. El
nombre de la variable será el mismo
que el nombre de columna.
El valor predeterminado es no
seleccionar columnas de
documento, pero se debe especificar
una columna como mínimo en los
valores DataColumns o
DocumentColumns.
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
177
Nombre
Descripción
Tipo de datos
Información adicional
WhereClause
Condición SQL,
adecuada para incluirla
en la cláusula WHERE
de una sentencia
SELECT, que
especifica las filas de la
base de datos que se
devolverán.
string
La cláusula WHERE inicial no se
incluye en la cadena. Una cláusula
WHERE normalmente es una
condición SQL simple como
"last_name = 'Ruiz'". La condición
puede incluir cualquier comparación
SQL válida, como operadores
aritméticos y coincidencia de
patrones. El valor predeterminado
es una cláusula WHERE vacía,
que seleccionará todas las filas.
(Avanzado) La cadena puede incluir
cualquier elemento que siga a la
palabra WHERE en una cláusula
SELECT de SQL. En concreto,
se pueden incluir palabras clave
de SQL como GROUP BY, HAVIN,
ORDER BY o COMPUTE. La
cláusula puede incluir incluso
subconsultas complejas.
Distinct
Especifica si sólo se
deben devolver filas
diferentes en el
conjunto de filas
devuelto.
bool
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
178
El valor predeterminado es FALSE,
lo que significa que se devolverán
todas las filas que coincidan con la
cláusula WHERE, incluso si hay
varias filas idénticas.
Métodos
Método
Comentarios
bool Go()
Esta acción ejecuta la consulta; sin embargo,
no se ha obtenido ninguna fila después de la
ejecución de Go(). Para recuperar valores, debe
llamar a GetNextRow para obtener una fila seguido
de GetInt, GetReal, etc.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
bool GetNextRow()
Este método intenta obtener la siguiente fila del
conjunto de resultados de la consulta. Si se ha
obtenido una fila, el método devuelve TRUE.
Cuando ya no hay disponibles más filas en el
conjunto de resultados, el método devuelve FALSE.
int GetInt(string columnName)
Los métodos Getxxx() intentan obtener el valor de
la columna especificada de la última fila obtenida y
devolverlo al script como el tipo de datos solicitado.
El valor de la columna se debe poder convertir al
tipo especificado; si no es así, se produce un error.
Las columnas de fecha y hora se pueden recuperar
mediante GetString() y devolver con el formato
ODBC estándar AAAA-MM-DD
HH:MM:SS[.FFFFFF].
real GetReal(string columnName)
string GetString(string columnName)
doc GetDoc(string columnName)
bool Finished()
Cierra el conjunto de resultados de la consulta
y otros recursos utilizados por la acción.
Notas:
•
Los datos de campo (nombres de columna) que no existan se ignoran y las advertencias se escriben
en el archivo de registro del servidor. De este modo, los scripts son independientes del esquema de la
base de datos.
•
Se debe leer al menos una columna mediante una consulta, por lo que DataColumns
o DocumentColumns debe especificar como mínimo una columna válida de la tabla.
•
Si desea utilizar los datos de documento posteriormente en un script, debe conocer su tipo de datos.
Los datos de documento normalmente se almacenan como datos binarios sin formato en la base de
datos, sin información de comprobación de tipo. Por ejemplo, si la base de datos contiene una
columna denominada 'historial' y sabe que el contenido de la columna son imágenes TIFF, debe
especificar "historial.tif" como el nombre de columna en la variable DocumentColumns.
•
Si se produce un error en el servidor antes de obtener todas las filas del conjunto de resultados,
el conjunto de resultados de la consulta contendrá TODAS las filas que cumplan los criterios de la
consulta la próxima vez que se ejecute el trabajo. Es decir, el servidor no "recordará" las filas que
se han procesado antes del error y se reanudará a partir de ahí una vez iniciado el servidor.
Objetos de acción
179
PrintByDriver (Imprimir)
Objetivo: imprime una o varias imágenes utilizando el controlador de Windows especificado.
Grupo de instalación: módulo de imágenes
Requisitos previos: un objeto de impresora para la impresora de la carpeta Impresoras de
Document Server.
Propiedades
Nombre
Descripción
Tipo de datos
Información adicional
Input
Datos origen de la acción.
doc
PrinterName
Especifica el nombre de
la impresora de Windows
que se utilizará.
string
Debe ser el nombre exacto de un
objeto de impresora de la carpeta
Impresoras.
Copies
Número de copias que se
imprimirán.
int
Valores válidos:
1–999
Valor predeterminado:
1
Collate
ColorModel
Si se especifican varias
copias, indica si las
copias se clasifican.
bool
Valor predeterminado:
FALSE
int (LDD Constant)
En impresoras en color,
esta propiedad indica si
sólo se debe utilizar el
cartucho negro de forma
que la salida aparezca en
negro/escala de grises en
lugar de en color.
Las impresoras monocromas ignoran
esta propiedad.
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_COLORMODEL_CMYK
LDD_COLORMODEL_BLACK
Valor predeterminado:
LDD_PRINTER_DEFAULT
Duplex
Indica el tipo de dúplex
que se utilizará para este
trabajo de impresión.
int (LDD Constant)
Si la impresora no admite la
impresión dúplex, este valor se
ignora.
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_DUPLEX_OFF
LDD_DUPLEX_LONGEDGE
LDD_DUPLEX_SHORTEDGE
Valor predeterminado:
LDD_PRINTER_DEFAULT
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
180
Nombre
Descripción
Tipo de datos
Información adicional
Orientation
Orientación que se
utilizará para todo el
trabajo.
int (LDD Constant)
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_ORIENTATION_PORTRAIT
LDD_ORIENTATION_LANDSCAPE
Valor predeterminado:
LDD_PRINTER_DEFAULT
PaperSize
Tamaño del papel que
se utilizará para todo el
trabajo.
int (LDD Constant)
Si no existe el tamaño del papel
especificado, la impresora puede
solicitarlo o seleccionar uno
alternativo.
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_PAPERSIZE_11X17
LDD_PAPERSIZE_A3
LDD_PAPERSIZE_A4
LDD_PAPERSIZE_A5
LDD_PAPERSIZE_EXECUTIVE
LDD_PAPERSIZE_FOLIO
LDD_PAPERSIZE_JISB4
LDD_PAPERSIZE_JISB5
LDD_PAPERSIZE_LEGAL
LDD_PAPERSIZE_LETTER
LDD_PAPERSIZE_STATEMENT
Valor predeterminado:
LDD_PRINTER_DEFAULT
Resolution
Resolución de la imagen
que se generará.
int (LDD constant)
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_RESOLUTION_150
LDD_RESOLUTION_300
LDD_RESOLUTION_600
LDD_RESOLUTION_1200
Valor predeterminado:
LDD_PRINTER_DEFAULT
AllPages
Imprime todas las
páginas del documento
de entrada.
bool
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
181
Valor predeterminado:
TRUE
Nombre
Descripción
Tipo de datos
Información adicional
StartPage
Primera página a
imprimir.
int
Para mantener la compatibilidad con
scripts anteriores, se utilizará este
valor si es distinto de cero, incluso
cuando AllPages esté definido en
FALSE.
Valor predeterminado:
0
EndPage
Última página a imprimir.
int
Para mantener la compatibilidad con
scripts anteriores, se utilizará este
valor si es distinto de cero, incluso
cuando AllPages esté definido en
FALSE.
Valor predeterminado:
0
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
182
PrintForm (Imprimir)
Objetivo: imprimir un formulario PDF combinado que se haya generado mediante la acción
MergeForm.
Grupo de instalación: módulo de impresión
Requisitos previos: ninguno
Propiedades:
Nombre
Descripción
Tipo de datos Información adicional
Input
Documento que se
imprimirá.
doc
Debe estar en formato PDF.
IPAddress
Dirección IP o nombre
de host DNS de la
impresora o nombre de
la cola de impresión de
Windows.
string
Para especificar una cola de impresión
de Windows, introduzca:
"Q:" seguido del nombre de la cola. De lo
contrario, introduzca la dirección IP o el
nombre de host DNS. Para obtener más
información, Uso de una cola de
impresión de Windows en la
página 185.
PrinterType
Especifica el tipo
de impresora que
se utilizará.
int (LDD
Constant)
Valores válidos:
LDD_PRINTERTYPE_LEXPS: impresora
PostScript de Lexmark
LDD_PRINTERTYPE_LEXIQPLUS:
impresora Lexmark con soporte para
PDF y formato de página
LDD_PRINTERTYPE_LEXIQ: impresora
Lexmark con soporte para PDF
Valor predeterminado:
LDD_PRINTERTYPE_LEXPS
PrintOptions
Opciones que se
utilizarán al imprimir
el formulario.
printoptions
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
183
Pueden ser las opciones de impresión
de la salida de la acción MergeForm
o se pueden configurar manualmente.
Nombre
Descripción
Tipo de datos Información adicional
WaitForCompletion
Esperar a que termine
el trabajo antes de
continuar.
bool
Esta opción sólo la admiten las
impresoras de Lexmark y se debe definir
en FALSE para las demás impresoras.
Si se define en TRUE, el método Go no
volverá hasta que la impresión se haya
realizado o se alcance el tiempo de
espera especificado por WaitTimeout.
Si se define en FALSE, el método Go
vuelve inmediatamente después de
enviar la solicitud de impresión.
Valor predeterminado:
FALSE
WaitTimeout
Número máximo de
minutos que se esperará
a que termine el trabajo.
int
Este valor se ignora si WaitForCompletion
está definido en FALSE. Este valor debe
dejar tiempo para que se imprima todo el
trabajo y el tiempo de calentamiento que
necesite la impresora.
Valores válidos:
1 – 60
Valor predeterminado:
5
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
184
Tipo de impresora
Un impresora LEXIQ es una impresora Lexmark con una opción ImageQuick. Si sólo se especifican
opciones de impresión por trabajo, éste es el modo más sencillo de imprimir el formulario
combinado. El PDF se puede enviar directamente a la impresora sin tener que convertirlo a
PostScript. Si se especifican opciones de impresión por página, el PDF se convertirá a PostScript
y, a continuación, se enviará a la impresora.
Una impresora LEXPS es una impresora PostScript de Lexmark. El PDF siempre se convertirá
a PostScript para este tipo de impresora.
Uso de una cola de impresión de Windows
Al imprimir numerosos trabajos en la misma impresora, es más efectivo imprimir mediante una
cola de impresión de Windows que directamente en la impresora. Esto también ofrece ventajas
adicionales ya que permite administrar los trabajos de impresión, realizar una pausa en la cola,
especificar una hora a la que se desea que se realicen los trabajos de impresión, etc.
Para crear la cola de impresión que se va a utilizar con LDD, vaya a la carpeta Impresoras del
ordenador donde reside Document Server. Cree un puerto TCP/IP estándar o un puerto de red de
Lexmark con la dirección IP de la impresora a la que se deben enviar los trabajos. A continuación,
agregue un objeto de impresora que se corresponda con la impresora a la que hace referencia el
puerto TCP/IP estándar. El nombre asignado al objeto de impresora es el que se debe utilizar para
el nombre de la cola.
Esta cola ya se puede utilizar en un script LDD. Consulte Ejemplo 2: en la página 186, en el que
se explica cómo se usa una cola.
Ejemplo 1:
En este ejemplo, se combinará un formulario con los datos procedentes de un flujo de impresión
y la acción PrintForm utilizará las opciones de impresión generadas por la acción MergeForm.
with MergeForm
.input = original.dataset
.Go()
endwith
with PrintForm
.input = MergeForm.output
.PrinterType = LDD_PRINTERTYPE_LEXPS
.PrintOptions = MergeForm.printoptions
.IPAddress = "miimpresora.miempresa.com"
.WaitForCompletion = FALSE
.Go()
endwith
Objetos de acción
185
Ejemplo 2:
El ejemplo 1 ha enviado el formulario combinado directamente a una impresora. En este ejemplo,
el formulario combinado se envía a una cola de impresión de Windows denominada LDD1.
with MergeForm
.input=original.dataset
.Go()
endwith
with PrintForm
.input=MergeForm.output
.IPAddress="Q:LDD1"
.PrinterType=LDD_PRINTERTYPE_LEXPS
.PrintOptions=MergeForm.printoptions
.WaitForCompletion=FALSE
.Go()
endwith
Ejemplo 3:
En este ejemplo, se combinará un formulario con los datos procedentes de un cliente de Document
Portal para imprimir un formulario en blanco. La acción PrintForm utilizará las opciones de impresión
enviadas por Document Portal.
dataset ds
ds.SetFormsetName("miformulario")
with MergeForm
.input = ds
.Go()
endwith
with PrintForm
.input = MergeForm.output
.PrinterType = LDD_PRINTERTYPE_LEXIQ
.PrintOptions = original.printoptions
.IPAddress = original.printerip
.WaitForCompletion = FALSE
.Go()
endwith
Objetos de acción
186
Ejemplo 4:
En este ejemplo, se combinará un formulario con los datos procedentes de un flujo de impresión.
En esta ocasión, las opciones de impresión que utiliza PrintForm se definen manualmente. Se trata
de un formulario multicopia y se imprimirá la página 1 desde la bandeja 1 y la página 2 desde la
bandeja 2; a continuación, se grapará la salida. Debido a que se están definiendo opciones por
página, el tipo de impresora será PostScript.
with MergeForm
.input = original.dataset
.Go()
endwith
printoptions po
po.SetJobOption(LDD_PRINTOPTION_STAPLE, LDD_STAPLE_ON)
po.SetPageOption(LDD_PRINTOPTION_PAPERSOURCE, LDD_PAPERSOURCE_TRAY1, 1, 1)
po.SetPageOption(LDD_PRINTOPTION_PAPERSOURCE, LDD_PAPERSOURCE_TRAY2, 2, 2)
with PrintForm
.input = MergeForm.output
.PrinterType = LDD_PRINTERTYPE_LEXPS
.PrintOptions = po
.IPAddress = "miimpresora.miempresa.com"
.WaitForCompletion = FALSE
.Go()
endwith
Objetos de acción
187
PrintJob (Imprimir)
Objetivo: esta acción elude el subsistema de Windows e imprime un archivo PostScript
directamente en una impresora de red.
Grupo de instalación: módulo de impresión
Requisitos previos: ninguno
Propiedades
Nombre
Descripción
Tipo de datos Información adicional
Input
Documento que se
imprimirá.
doc
IPAddress
Dirección IP o nombre
de host DNS de la
impresora.
string
Copies
Número de copias que
se imprimirán.
Int
Debe estar en formato PostScript.
Valores válidos:
1 – 999
Valor predeterminado:
1
PaperSource
Origen del papel
utilizado para imprimir
todo el trabajo.
int (LDD
Constant)
Si el origen del papel especificado no
está disponible para la impresora, ésta
seleccionará el origen del papel que se
utilizará.
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_PAPERSOURCE_TRAY1
LDD_PAPERSOURCE_TRAY2
LDD_PAPERSOURCE_TRAY3
LDD_PAPERSOURCE_TRAY4
LDD_PAPERSOURCE_TRAY5
LDD_PAPERSOURCE_ENV_FEEDER
LDD_PAPERSOURCE_MP_FEEDER
LDD_PAPERSOURCE_MANUAL_ENV
LDD_PAPERSOURCE_MANUAL_PAPER
Valor predeterminado:
LDD_PRINTER_DEFAULT
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
188
Nombre
Descripción
Tipo de datos Información adicional
PaperType
Tipo de papel que se
utilizará para todo el
trabajo.
int (LDD
Constant)
Si no existe el tipo de papel especificado,
la impresora puede solicitarlo o
seleccionar uno alternativo.
Valores válidos:
LDD_PAPERTYPE_PLAIN
LDD_PAPERTYPE_COLOR
LDD_PAPERTYPE_TRANSPARENCY
LDD_PAPERTYPE_CARDSTOCK
LDD_PAPERTYPE_LABELS
LDD_PAPERTYPE_LETTERHEAD
LDD_PAPERTYPE_PREPRINTED
LDD_PAPERTYPE_BOND
LDD_PAPERTYPE_ENVELOPE
LDD_PAPERTYPE_CUSTOM1
LDD_PAPERTYPE_CUSTOM2
LDD_PAPERTYPE_CUSTOM3
LDD_PAPERTYPE_CUSTOM4
LDD_PAPERTYPE_CUSTOM5
LDD_PAPERTYPE_CUSTOM6
Valor predeterminado:
LDD_PRINTER_DEFAULT
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
189
Nombre
Descripción
Tipo de datos Información adicional
PaperSize
Tamaño del papel que
se utilizará para todo el
trabajo.
int (LDD
Constant)
Si no existe el tamaño del papel
especificado, la impresora puede
solicitarlo o seleccionar uno alternativo.
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_PAPERSIZE_11X17
LDD_PAPERSIZE_A3
LDD_PAPERSIZE_A4
LDD_PAPERSIZE_A5
LDD_PAPERSIZE_ENV_10
LDD_PAPERSIZE_ENV_9
LDD_PAPERSIZE_ENV_734
LDD_PAPERSIZE_ENV_B5
LDD_PAPERSIZE_ENV_C5
LDD_PAPERSIZE_ENV_DL
LDD_PAPERSIZE_ENV_OTHER
LDD_PAPERSIZE_EXECUTIVE
LDD_PAPERSIZE_FOLIO
LDD_PAPERSIZE_JISB4
LDD_PAPERSIZE_JISB5
LDD_PAPERSIZE_LEGAL
LDD_PAPERSIZE_LETTER
LDD_PAPERSIZE_STATEMENT
LDD_PAPERSIZE_UNIVERSAL
Valor predeterminado:
LDD_PRINTER_DEFAULT
Orientation
Orientación que se
utilizará para todo el
trabajo.
int (LDD
Constant)
Valores válidos:
LDD_PRINTER_DEFAULT
LDD_ORIENTATION_PORTRAIT
LDD_ORIENTATION_LANDSCAPE
Valor predeterminado:
LDD_PRINTER_DEFAULT
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
190
Nombre
Descripción
Tipo de datos Información adicional
Nup
Especifica que se
impriman varias páginas
en una sola.
int (LDD
Constant)
Valores válidos:
LDD_NUP_OFF
LDD_NUP_2UP
LDD_NUP_3UP
LDD_NUP_4UP
LDD_NUP_6UP
LDD_NUP_9UP
LDD_NUP_12UP
LDD_NUP_16UP
Valor predeterminado:
LDD_NUP_OFF
NupBorder
Especifica si se debe
colocar un borde
alrededor de cada
página.
bool
Este valor se ignora si Nup está
desactivado.
Valor predeterminado:
TRUE
NupOrder
int (LDD
Constant)
Este valor se ignora si Nup está
desactivado.
Valores válidos:
LDD_NUP_ORDER_HORIZONTAL
LDD_NUP_ORDER_VERTICAL
LDD_NUP_ORDER_REV_HORIZONTAL
LDD_NUP_ORDER_REV_VERTICAL
Valor predeterminado:
LDD_NUP_ORDER_HORIZONTAL
NupOrientation
int (LDD
Constant)
Este valor se ignora si Nup está
desactivado.
Valores válidos:
LDD_NUP_ORIENTATION_AUTO
LDD_NUP_ORIENTATION_PORTRAIT
LDD_NUP_ORIENTATION_LANDSCAPE
Valor predeterminado:
LDD_NUP_ORIENTATION_PORTRAIT
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
191
Nombre
Descripción
Tipo de datos Información adicional
Duplex
Indica el tipo de dúplex
que se utilizará para
este trabajo de
impresión.
int (LDD
Constant)
Si la impresora no admite la impresión
dúplex, este valor se ignora.
Valores válidos:
LDD_DUPLEX_OFF
LDD_DUPLEX_LONGEDGE
LDD_DUPLEX_SHORTEDGE
Valor predeterminado:
LDD_DUPLEX_OFF
Collate
Staple
HolePunch
Si se especifican varias
copias, indica si las
copias se clasifican.
bool
Indica si se debe grapar
este trabajo de
impresión.
bool
Indica si se debe
perforar este trabajo
de impresión.
bool
Valor predeterminado:
FALSE
Valor predeterminado:
FALSE
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
192
Nombre
Descripción
Tipo de datos Información adicional
OutputBin
Indica la bandeja de
salida que se utilizará
para este trabajo de
impresión.
int (LDD
Constant)
Esta opción sólo la admiten las impresoras
Lexmark. Si se selecciona el valor
predeterminado, se utilizará la bandeja
de salida predeterminada seleccionada
actualmente en la impresora. La bandeja
de salida estándar hace referencia a la
bandeja principal de la impresora; las
bandejas de salida numeradas hacen
referencia a las disponibles si se han
conectado unidades de salida o un
clasificador a la impresora. Si se
selecciona una bandeja de salida no
válida, se utilizará la predeterminada.
Valores válidos:
LDD_OUTPUTBIN_DEFAULT
LDD_OUTPUTBIN_STANDARD
LDD_OUTPUTBIN_1
LDD_OUTPUTBIN_2
LDD_OUTPUTBIN_3
LDD_OUTPUTBIN_4
LDD_OUTPUTBIN_5
LDD_OUTPUTBIN_6
LDD_OUTPUTBIN_7
LDD_OUTPUTBIN_8
LDD_OUTPUTBIN_9
LDD_OUTPUTBIN_10
Valor predeterminado:
LDD_OUTPUTBIN_DEFAULT
TonerSaver
Indica si se debe activar
el economizador de
tóner para este trabajo
de impresión.
bool
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
193
Sintaxis
Descripción
bool SetWaitTimeout(bool wait [, int minutes])
Activa o desactiva la confirmación de impresión
para este trabajo de impresión. Si se activa, el
método Go no volverá hasta que el trabajo de
impresión haya finalizado o se alcance el tiempo
de espera especificado. Si se desactiva, el
método Go vuelve inmediatamente después de
enviar la solicitud de trabajo de impresión. No se
debe usar si se utiliza la impresión confidencial.
Parámetros:
wait: defínalo en TRUE para activar o en FALSE
para desactivar
timeout: si se activa, el número máximo de
minutos que se esperará; debe estar entre 1 y 60.
Devuelve:
Un valor bool que indica si se han proporcionado
valores válidos.
void SetConfidentialPrint(bool enable
[, string username, string jobname, string pin] )
Activa o desactiva la impresión confidencial para
este trabajo de impresión. Si se activa, el trabajo
de impresión se enviará a la impresora, pero no
se imprimirá hasta que se introduzca un PIN. No
se debe usar si se utiliza la confirmación de
impresión.
Parámetros:
enable: defínalo en TRUE para activar o en
FALSE para desactivar
username: nombre de usuario que se mostrará
en el panel del operador de la impresora después
de que se introduzca el PIN
jobname: nombre de trabajo que se mostrará
en el panel del operador de la impresora después
de que se introduzca el PIN
pin: número de cuatro dígitos que se debe
introducir en el panel del operador de la
impresora para imprimir
Devuelve:
Un valor bool que indica si se han proporcionado
valores.
Notas:
•
El valor de origen del papel anula los valores de tipo y tamaño del papel. Se recomienda definir el origen
del papel o el tamaño y/o tipo de papel. El tamaño y el tipo del papel se pueden definir al mismo tiempo.
•
La impresión confidencial y la confirmación de impresión no se deben utilizar a la vez.
•
La confirmación de impresión sólo la admiten las impresoras Lexmark. Si se activa para otras
impresoras, siempre se informará que se ha agotado el tiempo de espera.
•
Aunque esta acción se puede utilizar con cualquier impresora conectada en red, algunas opciones
sólo pueden funcionar correctamente con impresoras Lexmark.
Objetos de acción
194
Confirmación de impresión
Los valores de WaitForCompletion y WaitTimeout se pueden utilizar para confirmar que un trabajo
se ha imprimido correctamente. Si se agota el tiempo de espera de un trabajo, el texto del panel del
operador de la impresora (como Cargar papel bandeja 1) se agregará como mensaje de error a la
página de confirmación. Después de corregir las condiciones de error de la impresora, el trabajo se
puede imprimir incluso si se ha alcanzado el tiempo de espera. El tiempo de espera simplemente
indica que se deje de esperar; no elimina ningún trabajo enviado a la impresora. En muy pocas
ocasiones, es posible que para un trabajo que se haya imprimido correctamente no se envíe una
alerta de finalización y, por lo tanto, se agote el tiempo de espera.
Objetos de acción
195
PrintURL (Imprimir)
Objetivo: esta acción envía la URL especificada (no la imagen) directamente a la impresora láser
Lexmark. A continuación, la impresora se conecta al servidor Web que aloja la URL e imprime por
descarga la página.
Grupo de instalación: módulo de impresión
Requisitos previos: una opción ImageQuick instalada en una impresora como mínimo y
configurada correctamente para la impresión por descarga desde la Web. Es posible que necesite
obtener los valores proxy y DNS de la impresora para establecer comunicación con Internet.
La opción ImageQuick debe ser de la siguiente versión o superior.
Familia de impresoras
Versión de la opción ImageQuick
Optra™ T
549
Optra W810
649
Optra C710
849
Nota: se admite cualquier versión de firmware para Lexmark C750, C910, T52x, T62x,
W820 y C720.
Propiedades
Nombre
Descripción
Tipo de datos
IPAddress
Dirección IP o nombre de string
host DNS de la impresora.
URL
URL que se imprimirá.
Información adicional
string
Los nombres en negrita son propiedades obligatorias.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Objetos de acción
196
SaveToFile (Guardar en archivo)
Objetivo: guarda archivos en un sistema de archivos local o de red.
Grupo de instalación: Document Server
Requisitos previos: para guardar un archivo en un sistema de archivos local (por ejemplo, una
unidad del equipo de Document Server), no es necesario realizar nada. Para guardar un archivo en
un sistema de archivos de red, el servicio Document Server debe estar configurado para conectarse
con una cuenta de usuario. Dicha cuenta de usuario debe tener permisos de archivo para escribir en
el sistema de archivos de red.
Para configurar el servicio Document Server para conectarse como un usuario (debe
conectarse como administrador para realizar este procedimiento):
Windows NT:
1
Haga clic en Inicio Æ Configuración Æ Panel de control Æ Servicios.
2
Seleccione el servicio Lexmark Document Server y haga clic en Inicio.
3
Haga clic en Esta cuenta y seleccione el nombre del usuario que tiene los derechos
de acceso deseados. Escriba la contraseña del usuario y confirme.
4
Haga clic en Aceptar.
Nota: para que el servicio se conecte como el usuario especificado, debe detener e iniciar
el servicio Document Server o reiniciar el ordenador.
Windows 2000/XP:
1
Haga clic en Æ Inicio Æ Configuración Æ Panel de control Æ Herramientas
administrativas Æ Servicios.
2
Haga doble clic en el servicio Lexmark Document Server.
3
Seleccione la ficha Iniciar sesión.
4
Haga clic en Esta cuenta y seleccione el nombre del usuario que tiene los derechos
de acceso deseados. Escriba la contraseña del usuario y confirme.
5
Haga clic en Aceptar.
Nota: para que el servicio se conecte como el usuario especificado, debe detener e iniciar
el servicio Document Server o reiniciar el ordenador.
Objetos de acción
197
Propiedades
Nombre
Descripción
Tipo de datos
Input
Datos origen de la
acción.
doc
Path
Ruta de acceso
completa y nombre
de archivo en el que
se debe guardar el
archivo.
string
Información adicional
En el caso de un sistema de archivos local,
se parecería a la siguiente:
Unidad:\Ruta de acceso\nombre de
archivo.ext
En el caso de un sistema de archivos
de red, se parecería a la siguiente:
\\Ordenador\Nombre de recurso
compartido\Ruta de acceso\nombre
de archivo.ext
No se pueden utilizar las unidades
asignadas de red.
Si se guarda en un sistema de archivos
de red, consulte los requisitos previos.
AppendTimeStamp Añade un sello de
hora que contiene el
año, mes, día y hora
del día al nombre de
archivo.
bool
Se puede utilizar para asegurarse de
que el archivo que se va a escribir tiene
un nombre único. Si se define en TRUE,
el nombre de archivo nuevo se parecerá
al siguiente: Unidad:\Ruta de
acceso\nombre de archivo_sello de
hora.ext
Valor predeterminado:
TRUE
OverWrite
Especifica si se
sobrescribe
cualquier archivo
existente con el
mismo nombre.
bool
Si se define en FALSE y ya existe un
archivo con el mismo nombre, el método
Go devolverá FALSE. Si se define en TRUE
y AppendTimeStamp se define en FALSE,
el archivo se sobrescribirá cada vez.
Valor predeterminado:
FALSE
CreateDirectory
Especifica si se
creará el directorio
de la ruta de acceso
si no existe.
bool
Valor predeterminado:
FALSE
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
198
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
Ejemplo 1: Valores de sello de hora
El valor de ruta de acceso para cada ejemplo es: “C:\data\app.tif".
Documento de
entrada
TimeStamp
Archivos guardados
Archivo único
FALSE
C:\data\app.tif
Dos archivos
FALSE
C:\data\app-1.tif
C:\data\app-2.tif
Archivo único
TRUE
C:\data\app_MAR_20_2002_17_30_20_456.tif
Dos archivos
TRUE
C:\data\app_MAR_20_2002_17_30_20_456-1.tif
C:\data\app_MAR_20_2002_17_30_20_456-2.tif
Cuando el documento de entrada tiene varios archivos, a cada uno se le añade un número al final
de su nombre, con lo que se genera un archivo único. Si se añade un sello de hora y hay varios
archivos, el número se añade después de dicho sello.
Todas las acciones de un script que pueden añadir un sello de hora utilizan el mismo. El valor que se
utiliza también está disponible mediante la propiedad usertime del objeto original (original.usertime).
El formato del sello de hora es:
_DD_MES_AAAA_HH_MM_SS_MSEG
donde:
•
•
•
•
•
•
•
MES es la abreviatura de tres letras del mes
DD es el día del mes
AAAA es el año de cuatro dígitos
HH es la hora con formato de 24 horas
MM son los minutos
SS son los segundos
MSEG son los milisegundos
Nota: observe que se coloca un carácter de subrayado delante del mes.
Objetos de acción
199
Ejemplo 2: Valores de ruta de acceso
Los valores de ruta de acceso para la acción SaveToFile se pueden introducir de modo que la acción
cree la carpeta.
with SaveToFile
.input=original.document
// Definir la ruta de acceso en C:\temp y el nombre de archivo en myfile.ps. Si la
// carpeta temp no existe, esta acción creará una.
.Path="C:\temp\myfile.ps"
.AppendTimeStamp=FALSE
.Overwrite=TRUE
.CreateDirectory=TRUE
.Go()
endwith
También se puede asignar un nombre a los valores de ruta de acceso de modo que la extensión de
Windows para el archivo guardado pueda coincidir automáticamente con el formato del documento
digitalizado:
SaveToFile.Path="C:\temp\myfile."+original.document.GetDocumentType()
Si el documento digitalizado es del tipo .TIF, la sentencia anterior crear el archivo myfile.TIF en la
carpeta C:\temp del servidor.
Objetos de acción
200
SharePoint
Requisitos previos:
1 En el equipo host debe estar instalado el kit de Microsoft Data Access. Para Windows 2000,
este componente se instala como parte del sistema operativo. El kit de Microsoft Data
Access también está disponible como una descarga independiente desde
http://www.microsoft.com. La instalación del kit de Microsoft Data Access requiere que
el sistema disponga de una instalación completa de la compatibilidad con ActiveX
(anteriormente, Automatización OLE).
2 El cliente de SharePoint debe estar instalado en el mismo ordenador que el servidor LDS.
Esto permite la instalación desde el CD de integración de EDMS del conjunto Document
Solution. Para que el servidor LDS interactúe con el cliente de SharePoint, el servicio del
servidor LDS se debe configurar para conectarse como usuario de ese sistema.
Para configurarlo con el fin de que permita la conexión como usuario para Windows 2000
y Windows XP:
a
Haga clic con el botón derecho del ratón en Mi PC.
b
Haga clic en Administrar.
c
Haga clic en Servicios y Aplicaciones.
d
Haga clic en Servicios.
e
Haga clic con el botón derecho del ratón en Lexmark Document Server en la lista Servicios.
f
Haga clic en Propiedades.
g
Haga clic en la ficha Iniciar sesión.
h
Seleccione el botón de radio de Esta cuenta. Elija una cuenta que tenga privilegios
administrativos.
i
Introduzca el nombre de usuario y la contraseña.
j
Haca clic en Habilitar.
k
Haga clic en Aplicar.
l
Haga clic en Aceptar.
m Aparecerá un cuadro de diálogo solicitando que reinicie el gateway de Lexmark
Document Server. Haga clic en Aceptar. Aparecerá un cuadro de diálogo indicándole
que se debe reiniciar el gateway de Lexmark Document Server.
3 Para crear scripts o insertar documentos en la carpeta de SharePoint Portal, el usuario debe
tener privilegios de autor para dicha carpeta. La lectura de un documento desde SharePoint
en LDD requiere que el usuario disponga, como mínimo, de privilegios de lector para el
documento o la carpeta de la que se leerá el documento.
4 Para construir consultas de búsqueda de documentos, debe estar familiarizado con la
sintaxis SQL de SharePoint.
Objetos de acción
201
SharePointWrite (EDMS: introducir)
Objetivo: introduce y publica documentos y los valores de perfil especificados en SharePoint
Portal Server.
Módulo de instalación: CD de EDMS
Requisito previo: consulte los requisitos previos de SharePoint de la página 201.
Propiedades:
Nombre
Descripción
Tipo de datos
Información adicional
Input
Documento que se
insertará en
SharePoint.
doc
No debe existir un documento con
este nombre en la carpeta de destino.
Si existe, se producirá un error en la
acción.
Server
URL del servidor
SharePoint Server.
string
UserName
Identidad que
utilizará LDD cuando
se conecte a
SharePoint.
string
Password
Contraseña para
conectarse a
SharePoint.
string
Workspace
Nombre del área
de trabajo de destino
en SharePoint.
string
Folder
Carpeta de
SharePoint de
destino donde se
insertará el
documento.
string
Profile
Nombre del perfil
de SharePoint que
se asociará a este
documento.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
202
Nombre
Descripción
Tipo de datos
Información adicional
CheckInLevel
Esta propiedad se
especifica como una
constante LDD.
int (LDD Constant)
Los valores válidos son:
LDD_SHAREPOINT_CHECKIN:
introducir el documento en SharePoint,
pero no hacer que esté disponible para
que lo vean otros usuarios.
LDD_SHAREPOINT_PUBLISH:
introducir el documento y hacer que
esté disponible para que lo vean otros
usuarios de SharePoint.
CheckInComment
Comentario que
se asociará al
documento
introducido.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
203
Métodos
Sintaxis
Descripción
bool Go()
Después de definir todas las propiedades
(consulte el método SetProperty() a
continuación), el método Go() se utiliza para
insertar un nuevo documento en la carpeta
especificada por la propiedad Folder.
void Reset()
Reset() borra todas las propiedades de acción
y todas las propiedades del perfil de SharePoint
definidas mediante la llamada anterior a
SharePointWrite.
void SetProperty(string name, string value)
Define el valor de la propiedad; los nombres de
propiedad válidos se determinan mediante el
perfil de SharePoint especificado en la propiedad
Profile de esta acción. Este método se puede
utilizar para definir propiedades de SharePoint
del tipo:
• Texto
• Cuadro de comentarios
• Lista (especifique los valores como una
cadena delimitada por comas)
• Lista de varios valores (especifique los valores
como una cadena delimitada por comas)
• Fecha (especifíquela utilizando el formato
de fecha devuelto por original.usertime)
Parámetros:
name: nombre de la propiedad que se definirá
value: valor de cadena en el que se definirá
la propiedad
Devuelve:
Nada
void SetProperty(string name, int value)
Define el valor de la propiedad; los nombres
de propiedad válidos se determinan mediante el
perfil de SharePoint especificado en la propiedad
Profile de esta acción. Este método se puede
utilizar para definir propiedades de SharePoint
de tipo numérico.
Parámetros:
name: nombre de la propiedad que se definirá
value: valor de entero en el que se definirá la
propiedad
Devuelve:
Nada
Objetos de acción
204
Ejemplo:
El siguiente ejemplo inserta un documento en SharePoint. El script también define varias
propiedades que están incluidas en el perfil del documento. Para este ejemplo se ha definido
un perfil de SharePoint denominado "Espec" para contener las siguientes propiedades:
Nombre de propiedad
Tipo de datos de SharePoint
Author
Texto
VersionCount
Número
Created
Fecha
Title
Texto
Draft
Texto
Subject
Texto
Description
Cuadro de comentarios
Keywords
Lista de varios valores
Los valores de cualquiera de estas propiedades se podrían definir mediante datos introducidos por
el usuario en la impresora multifunción, pero la mayoría se han definido como literales para mostrar
los formatos de valores de los distintos tipos de datos de SharePoint. Observe que en el ejemplo el
valor de la propiedad de lista de varios valores, como "Palabras clave", se ha especificado como una
lista delimitada por comas.
with SharePointWrite
.input=original.document
.server="http://tahoe.server.com"
.workspace="ldd"
.folder="/documentos/Espec"
.profile="Espec"
.username=userdata.username
.password=userdata.password
.checkinlevel=LDD_SHAREPOINT_PUBLISH
.checkincomment="Ahí va."
.SetProperty("Autor","Usuario LDD")
.SetProperty("Creado",original.usertime)
.SetProperty("ContadorVersión",2)
.SetProperty("Título","Especificación del diseño del dispositivo")
.SetProperty("Descripción","Describe la especificación del dispositivo.")
.SetProperty("Asunto","Dispositivo")
.SetProperty("Palabras clave","Dispositivo,diseño")
.SetProperty("Borrador","Sí")
.Go()
endwith
Objetos de acción
205
SharePointRead (EDMS: recuperar)
Objetivo: recupera documentos y valores de perfil asociados al documento almacenado
en SharePoint Portal Server que coinciden con los criterios especificados.
Módulo de instalación: CD de EDMS
Requisito previo: consulte los requisitos previos de SharePoint de la página 201.
Propiedades:
Nombre
Descripción
Tipo de datos
Server
URL del servidor
SharePoint Server.
string
UserName
Identidad que utilizará
LDD cuando se
conecte a SharePoint.
string
Password
Contraseña para
conectarse a
SharePoint.
string
Workspace
Nombre del área de
trabajo de SharePoint
de la que se
recuperarán los
documentos y/o
metadatos.
string
StartFolder
Representa el nombre string
de la carpeta en la
jerarquía de SharePoint
a partir de la que
comenzará la
búsqueda actual.
El comportamiento de
búsqueda predeterminado
es incluir esta carpeta y
todas sus secundarias en
el ámbito de búsqueda.
Metadata
Lista delimitada por
comas de propiedades
de documento que
devolverá SharePoint.
Consulte Abreviaturas de
propiedad en la
página 209 para obtener
más información.
WhereClause
Define los criterios para Cadena de caracteres
limitar el número de
documentos devueltos
por la consulta de
SharePoint.
CustomQuery
string
Esta propiedad de
acción permite
personalizar la consulta
de SharePoint.
string
Los nombres en negrita son propiedades obligatorias.
Objetos de acción
206
Información adicional
Esta propiedad, cuando se
especifica, representa toda
la consulta de SharePoint
y anula cualquier valor
definido para las
propiedades Metadata
y WhereClause.
Métodos
Sintaxis
Descripción
bool Go()
Ejecuta la acción. Devuelve TRUE o FALSE para
indicar si la acción ha terminado correctamente.
void Reset()
Borra las propiedades actuales y les devuelve
su valor predeterminado.
bool GetNextRow()
Obtiene la siguiente fila del conjunto de registros
de la consulta. El método Go se llama para ejecutar
la consulta; produce un conjunto de registros que
contiene todos los documentos que coinciden con
la consulta. A continuación, se llama a este método
para obtener cada fila del registro una a una. Se
produce un error en este método cuando no quedan
más filas en el conjunto de registros.
Parámetros:
Ninguno
Devuelve:
Un valor bool para indicar si una fila se ha recuperado
correctamente.
string GetString(string propertyname)
Obtiene el valor de la propiedad especificada
en el parámetro propertyname de la fila actual
en el conjunto de registros. Este método se llama
después del método GetNextRow para obtener una
propiedad de SharePoint del tipo:
• Texto
• Cuadro de comentarios
• Lista (valores devueltos como una cadena
delimitada por comas)
• Lista de varios valores (valores devueltos como
una cadena delimitada por comas)
• Fecha (devuelta en el formato de SharePoint:
DD/MM/AAAA HH:MM:SS AM)
Si se utiliza este método para una propiedad de otro
tipo o para una propiedad que no existe, se
producirá un error.
Parámetros:
propertyname: nombre de la propiedad de la que
se obtendrá el valor
Devuelve:
Una cadena que contiene el valor de la propiedad
especificada.
Objetos de acción
207
Sintaxis
Descripción
int GetInt (string propertyname)
Obtiene el valor de la propiedad especificada en el
parámetro propertyname de la fila actual en el
conjunto de registros. Este método se llama
después del método GetNextRow para obtener una
propiedad de SharePoint del tipo: número.
Si se utiliza este método para una propiedad de otro
tipo o para una propiedad que no existe, se
producirá un error.
Parámetros:
propertyname: nombre de la propiedad de la que se
obtendrá el valor.
Devuelve:
Un entero que contiene el valor de la propiedad
especificada.
doc GetDoc ()
Obtiene el documento de la fila actual del conjunto
de registros. Este método se llama después del
método GetNextRow para obtener el documento de
esta fila que coincide con los criterios de la consulta.
Parámetros:
Ninguno
Devuelve:
Un documento que contiene el documento asociado
a la fila actual del conjunto de registros.
bool Finished()
Cierra el conjunto de registros de la consulta y libera
otros recursos utilizados por la acción. Después de
llamar a este método no hay acceso a los resultados
de la consulta anterior.
Parámetros:
Ninguno
Devuelve:
Un valor bool que indica si se ha realizado correcta
o incorrectamente.
Objetos de acción
208
Abreviaturas de propiedad
En general, las propiedades de SharePoint se identifican de forma única mediante su nombre
de recurso uniforme (URN). Por ejemplo, el URN para la propiedad Author de un documento es
"urn:schemas-microsoft-com:Office:Office#Author". La acción SharePoint de LDD permite utilizar
una forma abreviada del URN cuando se asignan nombres de propiedad a la propiedad Metadata de
la acción. En el caso de la propiedad Author, la versión abreviada simplemente sería "Author"; LDD
agrega el prefijo "urn:schemas-microsoft-com:Office:Office#" para crear el URN completo antes de
enviar la consulta a SharePoint.
Si utiliza esta "abreviatura" al especificar los metadatos del documento, LDD le permite utilizar
también esta misma abreviatura al especificar un valor en la propiedad WhereClause y al recuperar
el valor de la propiedad mediante GetString() o GetInt(). Sin embargo, esta abreviatura no será
válida si no aparece en la cláusula MetaData y se tendrá que hacer referencia a la propiedad
mediante su URN completo. Si decide no utilizar la abreviatura de una propiedad, es perfectamente
aceptable hacer referencia a las propiedades en la propiedad Metadata mediante su URN completo.
SharePoint dispone de varias propiedades globales en las que se pueden realizar búsquedas y que
se pueden recuperar junto con el documento. Son las siguientes:
Propiedad global de SharePoint (URN)
Descripción
urn:schemas.microsoft.com:fulltextqueryinfo:crawlmodifiedtime Sello de hora cuando SharePoint
Portal Server ha detectado que el
documento es diferente y ha
actualizado el índice.
urn:schemas.microsoft.com:fulltextqueryinfo:description
Descripción del resultado de la
búsqueda.
urn:schemas-microsoft-com:publishing:BestBetCategories
Lista de las categorías Best Bet
asociadas a un documento.
urn:schemas-microsoft-com:publishing:BestBetKeywords
Lista de las palabras clave Best Bet
asociadas a un documento.
urn:schemas-microsoft-com:publishing:Categories
Lista de las categorías en las que
aparece el documento.
urn:schemas-microsoft-com:publishing:isdoclibrarycontent
(Booleano) Indica si un determinado
documento existe en un área de
trabajo de SharePoint Portal Server.
urn:schemas-microsoft-com:publishing:FriendlyVersionID
(Cadena) La identificación (ID) de
versión en formato descriptivo (es
decir, "1.1", "3.0", etc.)
urn:schemas-microsoftcom:publishing:issuggestedcategoryused
(Booleano) Determina si el campo
AutoCategories se utiliza para
decidir que un documento está en
una categoría, no si se ha clasificado
automáticamente.
Objetos de acción
209
Existen otras numerosas propiedades globales definidas por SharePoint, que podrá encontrar
en http://msdn.microsoft.com/library/default.asp?url=/library/en-us/spssdk/html/
_searchable_document_properties.asp. Muchas de estas otras propiedades se pueden utilizar
para restringir los registros que devuelve la consulta de SharePoint; sin embargo, las consultas
de SharePoint no pueden recuperar estas propiedades (es decir, no se pueden enumerar en la
propiedad Metadata). Las propiedades enumeradas en esta tabla son propiedades que se pueden
recuperar mediante la consulta. Las abreviaturas se pueden utilizar para los valores de esta tabla.
Tenga en cuenta que, aunque estas propiedades se pueden recuperar en la consulta, pueden no ser
siempre válidas para el documento concreto que se está recuperando y se deben recuperar
teniendo presente este hecho.
Objetos de acción
210
Ejemplo 1
El siguiente ejemplo utiliza el ID de autor introducido por el usuario para leer documentos de un
servidor SharePoint Server e imprimirlos. Se utiliza un nombre de recurso uniforme (URN) para
especificar el nombre de propiedad. SharePoint requiere que los URN estén entre comillas. Para
especificar las comillas dentro de una cadena en LDD se debe anteponer el carácter de intercalación
"^" a las comillas. Debido a que se van a recuperar varios documentos, la llamada a .GetDoc() estará
dentro de un bucle y se utilizará el valor devuelto por .GetNextRow() para terminar el bucle.
doc d
with SharePointRead
.server="http://tahoe.server.com"
.workspace="ldd"
.startfolder="/Documentos/Espec"
.username=userdata.username
.password=userdata.password
.whereclause="^"urn:schmas-microsoft-com:office:office#AuthId^"='"+
userdata.authid+"'"
.Go()
repeat until (.getnextrow()==false)
d = .GetDoc()
// En primer lugar, convertir el documento a formato PostScript.
ConvertToDocument.input = d
ConvertToDocument.Format=LDD_DOCFORMAT_PS
ConvertToDocument.PaperSize=LDD_PAPERSIZE_AUTO
ConvertToDocument.Orientation=LDD_ORIENTATION_AUTO
ConvertToDocument.PSResolution=LDD_RESOLUTION_300
ConvertToDocument.AllPages=TRUE
ConvertToDocument.Go()
// A continuación, imprimirlo.
PrintJob.input=ConvertToDocument.output
PrintJob.IPAddress=original.userip
PrintJob.PaperType=LDD_PAPERTYPE_DEFAULT
PrintJob.Copies=1
PrintJob.Nup=LDD_NUP_OFF
PrintJob.NupBorder=TRUE
PrintJob.Duplex=LDD_DUPLEX_OFF
PrintJob.OutputBin=LDD_OUTPUTBIN_DEFAULT
PrintJob.Collate=FALSE
PrintJob.ConfidentialPrint=FALSE
PrintJob.WaitForCompletion=FALSE
PrintJob.Go()
endrepeat
.Finished()
endwith
Objetos de acción
211
Ejemplo 2
En este ejemplo se recuperan los nombres de varios documentos de SharePoint que pertenecen
a un autor específico. Observe que se han utilizado las abreviaturas de propiedad para asignar un
valor a .metadata y para recuperar el valor de dichas propiedades mediante .GetString(). Sólo las
abreviaturas especificadas en la propiedad .metadata las pueden utilizar posteriormente los
métodos de recuperación de valores, .GetString() y .GetInt(). Aunque se ha utilizado la abreviatura
"Author" en la propiedad .metadata, se sigue utilizando el URN en la cláusula WHERE. Las
abreviaturas no se pueden utilizar en la cláusula WHERE.
string
string
string
string
title
author
address="jgarcia@servidor.correo.com"
docmsg
docmsg = "Los siguientes documentos aún no están aprobados:^n^n"
with SharePointRead
.server="http://tahoe.server.com"
.workspace="ldd"
.startfolder="/Documentos"
.username="Administrador"
.password="VENUS"
.metadata="Title,Author"
.whereclause="^"urn:schemas-microsoft-com:office:office#Author^"='"
+userdata.author+"'"
.Go()
repeat until (.getnextrow()==false)
title
= .GetString("Title")
author = .GetString("Author")
docmsg.Concatenate(title)
docmsg.Concatenate("^t")
docmsg.Concatenate(author)
docmsg.Concatenate("^n")
endrepeat
.Finished()
endwith
with EmailSMTP
.Server="servidor.correo.com"
.To=address
.From="jgarcia@servidor.correo.com"
.Subject="Documentos de SharePoint"
.Message=docmsg
.CharacterSet=LDD_SMTPCHARSET_US
.Go()
endwith
Objetos de acción
212
7
Solicitudes
El mecanismo de solicitudes de LDDScript 3.2 permite que los scripts interactúen con el usuario
en la impresora multifunción o la estación de trabajo. Esta interacción permite realizar preguntas
al usuario y utilizar las respuestas para configurar más preguntas o en el propio script.
El formato del bloque prompt es el siguiente:
prompt
step "nombrepaso"
ask(solicitud)
nextstep "nombrepaso2"
step "nombrepaso2"
ask(solicitud2)
laststep
endprompt
Las palabras clave prompt y endprompt se utilizan para designar el bloque de solicitudes. Todos los
pasos y acciones que aparecen en este bloque se ejecutan antes de que se realice la digitalización
en la impresora multifunción o antes de que el archivo se envíe desde la estación de trabajo. Sólo
puede haber uno de estos bloques en el script y debe estar al principio antes de cualquier acción
que necesite el documento digitalizado o enviado.
En el bloque prompt son válidas las siguientes palabras clave:
•
step "nombrepaso": step se utiliza para indicar el principio de un grupo que contiene una o varias
preguntas o acciones; nombrepaso es una cadena y el nombre asignado a la agrupación. El primer
bloque step que se muestra será el primero que ejecute el bloque prompt. Cada bloque prompt debe
tener un bloque step como mínimo.
•
ask(solicitud): ask se utiliza para mostrar la solicitud especificada en la impresora multifunción o
la estación de trabajo. La solicitud es uno de los objetos de solicitud que permiten mostrar un
mensaje, texto, contraseña, número, lista de selección única o lista de selección múltiple. En un
bloque step puede haber varias sentencias ask.
•
nextstep "nombrepaso": nextstep se utiliza para identificar el siguiente bloque step que se tiene
que ejecutar; nombrepaso debe coincidir con uno de los nombres asignados mediante la palabra
clave step. Los nombres de paso no se tienen que utilizar en orden y se pueden usar varias veces.
•
laststep: laststep se utiliza para identificar el último bloque step del bloque prompt. Después de
ejecutar este paso, finalizará la solicitud y se enviará la digitalización de la impresora multifunción
o el archivo de la estación de trabajo.
Todas las solicitudes utilizadas en el bloque prompt se deben definir antes de la palabra clave
prompt. Mientras se está en el bloque prompt, se puede utilizar cualquier acción disponible en el
servidor. Sin embargo, tenga en cuenta que el documento digitalizado real no está disponible hasta
que termine la solicitud. Por lo tanto, original.document no está disponible. El resto de este capítulo
describe los distintos objetos de solicitud que se pueden utilizar en el script.
Solicitudes
213
Solicitud de activación
El objeto de solicitud de activación se utiliza para solicitar al usuario una respuesta de "sí" o "no".
El objeto de solicitud booleana se puede utilizar en cualquier parte de un script donde se pueda usar
un valor bool. Una solicitud es de este tipo cuando se declara como: boolprompt.
Cuando se utiliza este objeto, se muestra una casilla de verificación que el usuario puede activar
o desactivar. Para definir un valor predeterminado para la casilla de verificación, asigne un valor
a la solicitud booleana.
boolprompt enable
enable = TRUE
Si se define la solicitud booleana en TRUE, la casilla de verificación aparecerá activada; si se define
en FALSE, aparecerá desactivada. Después de realizar la solicitud, la solicitud booleana contiene el
valor de lo que se ha seleccionado.
Este objeto no tiene propiedades. Además de los métodos descritos a continuación, este objeto
también tiene todos los métodos disponibles para un objeto booleano.
Métodos
Sintaxis
Descripción
void SetPromptText(string text)
Define el texto o la pregunta que se mostrará
para solicitar una respuesta al usuario.
Parámetros:
text: texto a mostrar
Devuelve:
Nada
Solicitudes
214
Solicitud de mensaje
El objeto de solicitud de mensaje se utiliza para mostrar mensajes de información o error al usuario.
Una solicitud es de este tipo cuando se declara como: messageprompt. Este objeto no tiene
propiedades.
Cuando se utiliza este objeto, se muestra el mensaje al usuario y éste, a continuación, pulsa
Aceptar para continuar.
Métodos
Sintaxis
Descripción
void SetPromptText(string text)
Define el mensaje de información o error que se
muestra al usuario.
Parámetros:
text: texto a mostrar
Devuelve:
Nada
Solicitudes
215
Solicitud de número
El objeto de solicitud de número se puede utilizar para solicitar al usuario un número o permitirle que
seleccione un número de una lista. El objeto de solicitud de número se puede utilizar en cualquier
parte de un script donde se pueda usar un entero. Una solicitud es de este tipo cuando se declara
como: intprompt.
Si no se agrega ningún elemento a la lista de selección, se muestra al usuario un cuadro de texto
donde puede escribir la respuesta. Para definir un valor predeterminado para el cuadro de texto,
asigne un valor a la solicitud de cadena.
intprompt num
num = 5
Si se ha agregado una o varias opciones a la lista de selección, se convierte en una lista de selección
única donde el usuario puede elegir una (y sólo una) opción de la lista. Para definir un valor
predeterminado para la lista, asigne el valor de uno de los elementos de la lista a la solicitud de cadena.
intprompt resolution
resolution =150
resolution.AddPromptOption(150)
resolution.AddPromptOption(300)
resolution.AddPromptOption(600)
Después de realizar la solicitud, la solicitud de número contiene el valor de lo que se ha escrito
o se ha seleccionado en la lista.
Este objeto no tiene propiedades. Además de los métodos descritos a continuación, este objeto
también tiene todos los métodos disponibles para un objeto de entero.
Métodos
Sintaxis
Descripción
void AddPromptOption(int option)
Agrega un número al final de la lista de selección.
Las opciones se muestran en el orden en que se
agregan.
Parámetros:
option: número que se agregará a la lista
Devuelve:
Nada
void ClearPromptOptions()
Elimina todas las opciones de la lista de selección.
Parámetros:
Ninguno
Devuelve:
Nada
Solicitudes
216
Sintaxis
Descripción
void ClearPromptRange()
Elimina los valores mínimo y máximo de esta
solicitud. Si no se define ningún rango, el usuario
puede introducir cualquier número válido.
Parámetros:
Ninguno
Devuelve:
Nada
void SetPromptRange(int min, int max)
Define los valores mínimo y máximo permitidos.
Al definir un valor para el parámetro min y el
parámetro max en cero (0), se define un valor
mínimo que se puede introducir sin definir un
límite superior. Estos valores se ignoran si se
va a utilizar como una lista de selección única.
Parámetros:
min: valor mínimo
max: valor máximo
Devuelve:
Nada
void SetPromptText(string text)
Define el texto o la pregunta que se mostrará para
solicitar una respuesta al usuario.
Parámetros:
text: texto a mostrar
Devuelve:
Nada
Solicitudes
217
Solicitud de opciones (selección múltiple)
El objeto de solicitud de opciones (selecciones múltiples) se puede utilizar para solicitar al usuario
que seleccione uno o varios elementos de una lista o que no seleccione ninguno. Una solicitud es de
este tipo cuando se declara como: arrayprompt.
Cuando se utiliza este objeto, se muestra al usuario un cuadro de lista en el que puede seleccionar
opciones. Puede haber elementos seleccionados previamente en la lista. Después de realizar la
solicitud, se puede consultar la solicitud de opciones (selecciones múltiples) para determinar las
opciones que ha seleccionado el usuario.
Este objeto no tiene propiedades.
Métodos
Sintaxis
Descripción
void AddPromptOption(string option)
Agrega una cadena al final de la lista de selección.
Las opciones se muestran en el orden en que se
agregan.
Parámetros:
option: cadena que se agregará a la lista
Devuelve:
Nada
void ClearPromptOptions()
Elimina todas las opciones de la lista de selección.
Parámetros:
Ninguno
Devuelve:
Nada
bool GetCheck(int index)
Devuelve el estado del elemento de la lista en el
índice especificado. El primer elemento de la lista
es 1. Si no existe el elemento especificado, se
devuelve FALSE.
Parámetros:
index: índice del elemento de la lista cuyo estado
de selección desea obtener
Devuelve:
TRUE si el elemento está seleccionado; de lo
contrario, FALSE.
Solicitudes
218
Sintaxis
Descripción
bool GetCheck(string option)
Devuelve el estado del elemento de la lista que
coincide con el texto proporcionado. El texto tiene
que ser exactamente igual que una de las
opciones. Si no se encuentra el elemento
especificado, se devuelve FALSE.
Parámetros:
option: texto del elemento cuyo estado de selección
desea obtener
Devuelve:
TRUE si el elemento está seleccionado; de lo
contrario, FALSE.
int GetOptionCount()
Devuelve el número de elementos que se han
agregado a la lista.
Parámetros:
Ninguno
Devuelve:
El número de elementos de la lista.
string GetPromptOption(int index)
Devuelve el texto del elemento de la lista en el
índice especificado. El primer elemento de la lista
es 1. Si no existe el elemento especificado, se
devuelve una cadena vacía.
Parámetros:
Ninguno
Devuelve:
El texto del elemento de la lista en el índice
especificado.
intarray GetSelectedIndexes()
Devuelve una matriz de enteros de todos los
índices seleccionados. El índice de cada opción
seleccionada será un elemento de la matriz. Los
índices de elementos empiezan en 1. Si no hay
seleccionado ningún elemento, se devuelve una
matriz vacía.
Parámetros:
Ninguno
Devuelve:
Una matriz de enteros de las opciones
seleccionadas.
Solicitudes
219
Sintaxis
Descripción
stringarray GetSelectedOptions()
Devuelve una matriz de cadenas que contiene el
texto de todos los elementos seleccionados. Cada
opción seleccionada será un elemento de la matriz.
Si no hay seleccionado ningún elemento, se
devuelve una matriz de cadenas vacía.
Parámetros:
Ninguno
Devuelve:
Una matriz de cadenas de las opciones
seleccionadas.
void SetCheck(int index, bool set)
Define el estado del elemento de la lista en el
índice especificado. El primer elemento de la lista
es 1.
Parámetros:
index: índice del elemento de la lista cuyo estado
de selección desea definir
set: TRUE marca el elemento como seleccionado
y FALSE como no seleccionado
Devuelve:
Nada
void SetCheck(string option, bool set)
Define el estado del elemento de la lista que
coincide con el texto proporcionado. El texto tiene
que ser exactamente igual que una de las
opciones.
Parámetros:
option: texto del elemento cuyo estado de selección
desea definir
set: TRUE marca el elemento como seleccionado
y FALSE como no seleccionado
Devuelve:
Nada
void SetPromptText(string text)
Define el texto o la pregunta que se mostrará para
solicitar una respuesta al usuario.
Parámetros:
text: texto a mostrar
Devuelve:
Nada
Solicitudes
220
Solicitud de opciones (selección única)
El objeto de solicitud de opciones (selección única) se puede utilizar para solicitar al usuario
que seleccione un elemento de una lista. Una solicitud es de este tipo cuando se declara como:
stringprompt.
Cuando se utiliza este objeto, se muestra al usuario un cuadro de lista en el que puede seleccionar
lo que desee. Después de realizar la solicitud, se puede consultar la solicitud de opciones (selección
única) para determinar la opción que ha seleccionado el usuario.
Este objeto no tiene propiedades.
Métodos
Sintaxis
Descripción
void AddPromptOption(string option)
Agrega una cadena al final de la lista de
selección. Las opciones se muestran en el orden
en que se agregan.
Parámetros:
option: cadena que se agregará a la lista
Devuelve:
Nada
void ClearPromptOptions()
Elimina todas las opciones de la lista de
selección.
Parámetros:
Ninguno
Devuelve:
Nada
bool GetCheck(int index)
Devuelve el estado del elemento de la lista en el
índice especificado. El primer elemento de la
lista es 1. Si no existe el elemento especificado,
se devuelve FALSE.
Parámetros:
index: índice del elemento de la lista cuyo estado
de selección desea obtener
Devuelve:
TRUE si el elemento está seleccionado; de lo
contrario, FALSE.
Solicitudes
221
Sintaxis
Descripción
bool GetCheck(string option)
Devuelve el estado del elemento de la lista que
coincide con el texto proporcionado. El texto
tiene que ser exactamente igual que una de las
opciones. Si no se encuentra el elemento
especificado, se devuelve FALSE.
Parámetros:
option: texto del elemento cuyo estado de
selección desea obtener
Devuelve:
TRUE si el elemento está seleccionado; de lo
contrario, FALSE.
string GetPromptOption(int index)
Devuelve el texto del elemento de la lista en el
índice especificado. El primer elemento de la
lista es 1. Si no existe el elemento especificado,
se devuelve una cadena vacía.
Parámetros:
Ninguno
Devuelve:
El texto del elemento de la lista en el índice
especificado.
void SetCheck(int index, bool set)
Define el estado del elemento de la lista en el
índice especificado. El primer elemento de la
lista es 1.
Parámetros:
index: índice del elemento de la lista cuyo estado
de selección desea definir
set: TRUE marca el elemento como seleccionado
y FALSE como no seleccionado.
Devuelve:
Nada
Solicitudes
222
Sintaxis
Descripción
void SetCheck(string option, bool set)
Define el estado del elemento de la lista que
coincide con el texto proporcionado. El texto
tiene que ser exactamente igual que una de las
opciones.
Parámetros:
option: texto del elemento cuyo estado de
selección desea definir
set: TRUE marca el elemento como seleccionado
y FALSE como no seleccionado.
Devuelve:
Nada
void SetPromptText(string text)
Define el texto o la pregunta que se mostrará
para solicitar una respuesta al usuario.
Parámetros:
text: texto a mostrar
Devuelve:
Nada
Solicitudes
223
Solicitud de contraseña
El objeto de solicitud de contraseña se utiliza para solicitar texto al usuario (normalmente una
contraseña). Cuando el usuario escriba una respuesta, aparecerán asteriscos en lugar del texto real
que se está escribiendo. El objeto de solicitud de contraseña se puede utilizar en cualquier parte de
un script donde se pueda usar una cadena. Una solicitud es de este tipo cuando se declara como:
passwordprompt.
Cuando se utiliza este objeto, se muestra al usuario un cuadro de texto en el que puede escribir la
respuesta. Aunque se puede asignar un valor predeterminado a esta solicitud, normalmente no se
utiliza ya que sólo aparecen asteriscos en el cuadro de texto. Después de realizar la solicitud, la
solicitud de contraseña contiene el valor de lo que se ha escrito.
Este objeto no tiene propiedades. Además de los métodos descritos a continuación, este objeto
también tiene todos los métodos disponibles para un objeto de cadena.
Métodos
Sintaxis
Descripción
void ClearPromptRange()
Elimina la longitud de caracteres mínima y máxima
de esta solicitud. Si no se define ningún rango, el
usuario puede introducir una respuesta sin limitación
de caracteres e incluso puede no introducir nada.
Parámetros:
Ninguno
Devuelve:
Nada
void SetPromptRange(int min, int max)
Define la longitud de caracteres mínima y máxima
permitida. Si se define en cero (0), se permite al
usuario no introducir nada. Al definir un valor para el
parámetro min y el parámetro max en cero (0), se
define un número mínimo de caracteres que el
usuario debe introducir sin definir un límite superior.
Al definir los parámetros min y max en el mismo
valor, se requiere que el usuario introduzca un
número exacto de caracteres.
Parámetros:
min: longitud de caracteres mínima
max: longitud de caracteres máxima
Devuelve:
Nada
void SetPromptText(string text)
Define el texto o la pregunta que se mostrará para
solicitar una respuesta al usuario.
Parámetros:
texto: texto a mostrar
Devuelve:
Nada
Solicitudes
224
Solicitud de texto
El objeto de solicitud de texto se puede utilizar para solicitar al usuario un texto o permitirle que
seleccione un elemento de texto de una lista. El objeto de solicitud de texto se puede utilizar en
cualquier parte de un script donde se pueda usar una cadena. Una solicitud es de este tipo cuando
se declara como: stringprompt.
Si no se agrega ningún elemento a la lista de selección, se muestra al usuario un cuadro de texto
donde puede escribir la respuesta. Para definir un valor predeterminado para el cuadro de texto,
asigne un valor a la solicitud de texto.
stringprompt str
str = "Valor predeterminado".
Si se ha agregado una o varias opciones a la lista de selección, se convierte en una lista de
selección única donde el usuario puede elegir una (y sólo una) opción de la lista. Para definir un
valor predeterminado para la lista, asigne el valor de uno de los elementos de la lista a la solicitud
de texto.
stringprompt str
str = "Rojo"
str.AddPromptOption("Azul")
str.AddPromptOption("Rojo")
str.AddPromptOption("Verde")
Después de realizar la solicitud, la solicitud de texto contiene el valor de lo que se ha escrito
o se ha seleccionado en la lista.
Este objeto no tiene propiedades. Además de los métodos descritos a continuación, este objeto
también tiene todos los métodos disponibles para un objeto de cadena.
Métodos
Sintaxis
Descripción
void AddPromptOption(string option)
Agrega una cadena al final de la lista de selección.
Las opciones se muestran en el orden en que se
agregan.
Parámetros:
option: cadena que se agregará a la lista
Devuelve:
Nada
void ClearPromptOptions()
Elimina todas las opciones de la lista de selección.
Parámetros:
Ninguno
Devuelve:
Nada
Solicitudes
225
Sintaxis
Descripción
void ClearPromptRange()
Elimina la longitud de caracteres mínima y
máxima de esta solicitud. Si no se define ningún
rango, el usuario puede introducir una respuesta
sin limitación de caracteres e incluso puede no
introducir nada.
Parámetros:
Ninguno
Devuelve:
Nada
void SetPromptRange(int min, int max)
Define la longitud de caracteres mínima y máxima
permitida. Si se define en cero (0), se permite al
usuario no introducir nada. Al definir un valor para
el parámetro min y el parámetro max en cero (0),
se define un número mínimo de caracteres que el
usuario debe introducir sin definir un límite
superior. Al definir los parámetros min y max en el
mismo valor, se requiere que el usuario introduzca
un número exacto de caracteres. Estos valores se
ignoran si se va a utilizar como una lista de
selección única.
Parámetros:
min: longitud de caracteres mínima
max: longitud de caracteres máxima
Devuelve:
Nada
Solicitudes
226
Referencia de ODBC
Requisitos y configuración de software
•
•
•
En el equipo host se debe instalar Microsoft Data Access Components (MDAC). Para
Windows 2000, estos componentes se instalan como parte del sistema operativo. Para
Windows NT, requiere la instalación de software anterior que utilice ODBC, como
Microsoft Office. MDAC también está disponible como descarga independiente en
http://www.microsoft.com/data. Compruebe la instalación de ODBC verificando si el
subprograma Orígenes de datos está en el Panel de control en Herramientas administrativas.
Los controladores de base de datos ODBC necesarios se deben instalar para el sistema de
administración de bases de datos (DBMS) requerido. MDAC debe instalar controladores para
formatos de base de datos conocidos como: Access, dBase, Excel, FoxPro, Oracle, Paradox,
texto delimitado, Visual FoxPro y SQL Server. Otros controladores están disponibles en
Microsoft o proveedores de DBMS. Su controlador debe ser compatible con ODBC 3.0 como
mínimo. En concreto, su base de datos debe admitir como mínimo cursores desplazables de
sólo avance y traducciones de datos compatibles con SQL92. Para utilizar el modo de
transacciones, debe verificar que el controlador ODBC es compatible con el nivel de entrada
SQL92 como mínimo y que los procedimientos almacenados que escriba para la acción que
se utilizará pueden ejecutarse dentro de una transacción.
Se tiene que configurar un origen de datos ODBC para que lo utilice el servidor. Se puede
realizar mediante el subprograma Orígenes de datos ODBC de Panel de control en el equipo
servidor. Hay muchas formas de hacerlo:
– Puede configurar un DSN de usuario, siempre que permita al servicio Document Server
conectarse a Windows con un nombre de usuario especificado (consulte el subprograma
Servicios de Panel de control).
– Puede configurar un DSN de sistema, que no requiere que Document Server se conecte
a Windows.
– Puede configurar un DSN de archivo, que se puede utilizar para acceder a bases de
datos remotas, pero normalmente requiere que el servicio Document Server se conecte
a la red y tenga acceso al archivo destino.
Si es necesario, cualquiera de estos orígenes de datos se pueden volver a configurar en
tiempo de ejecución mediante una opción de acción.
Referencia de ODBC
227
•
•
•
La base de datos destino debe contener información de cuenta para el servidor. Para todas
las bases de datos, excepto las más simples, se requiere un nombre de usuario y una
contraseña de conexión para que el servidor edite la base de datos. El servidor requiere,
como mínimo, derechos de consulta de estructura para las tablas a las que van a acceder
sus scripts. También requiere acceso SELECT para las lecturas de base de datos y
privilegios INSERT para las escrituras de base de datos, además de privilegios EXECUTE
para los procedimientos almacenados que vaya a utilizar. El nombre de usuario y la
contraseña se pueden suministrar como parte de la configuración del origen de datos ODBC
o se pueden especificar en los valores de la acción.
El servicio Document Server debe disponer de derechos de acceso a las bases de datos
y/o repositorios de documentos que vayan a utilizar los scripts. Esto normalmente requiere
que se concedan los privilegios necesarios para compartir a los recursos de la red y que el
servicio Document Server se configure para conectarse a la red con un nombre de usuario
y contraseña específicos. Consulte el subprograma Servicios de Panel de control de su
ordenador para obtener información sobre cómo hacerlo.
Para utilizar las características más avanzadas del módulo, debe estar familiarizado con
ODBC, SQL y las peculiaridades de su DBMS. En concreto, debe estar familiarizado con la
creación de procedimientos almacenados para la base de datos y conocer las implicaciones
del bloqueo de filas, las transacciones en serie y la duplicación de bases de datos.
Para obtener más información sobre cualquiera de estos requisitos previos, consulte la ayuda en
línea de Administrador de ODBC y la documentación incluida con su DBMS.
Compatibilidad de documentos de base de datos
Un documento que se almacena en una base de datos se puede denominar genéricamente objeto
grande binario (BLOB). No todas las bases de datos proporcionan compatibilidad BLOB y, por lo
tanto, no admiten el almacenamiento de documentos en la base de datos. Oracle y Microsoft SQL
Server son ejemplos de bases de datos que proporcionan compatibilidad con BLOB; por otro lado,
Microsoft Access es un ejemplo de una base de datos que no proporciona dicha compatibilidad.
Las bases de datos que no proporcionan compatibilidad con BLOB se pueden seguir utilizando para
administrar documentos y trabajar con las acciones ODBCWrite y ODBCRead de Document
Distributor. Para estas bases de datos, el script debe tener acceso a un directorio de red en el que se
puedan almacenar los documentos. A continuación, el script puede utilizar la acción SaveToFile para
escribir el documento de entrada en dicho directorio y almacenar la ubicación del archivo recién
creado en la base de datos como una cadena. Del mismo modo, para recuperar el documento se
puede obtener la ubicación del archivo almacenado de la base de datos como una cadena y, a
continuación, utilizar el método AddFile() de una variable de documento para recuperarlo. Otras
acciones del script pueden manipular y utilizar los documentos creados de este modo.
Referencia de ODBC
228
Inserción de valores en columnas de fecha
Document Distributor proporciona la fecha y hora actuales mediante original.usertime. Se trata
de un valor de cadena con el siguiente formato: _DD_MMM_AAAA_HH_MI_SS_SSS. Los formatos
de fecha/hora ODBC para los distintos tipos de datos SQL se muestran en la tabla siguiente. La
transformación de original.usertime en el formato ODBC adecuado implica dividir original.usertime
en sus componentes y volverlos a agrupar en el formato correspondiente aceptado por ODBC. En el
caso de los scripts que crean filas nuevas en la base de datos, el valor de hora necesario en la base
de datos es, con bastante probabilidad, la hora a la que se creó la fila y no la hora a la que se envió
el documento a Document Distributor. En estos casos, resulta más fácil especificar un valor
predeterminado en la base de datos para la columna de fecha/hora correspondiente en vez de
suministrar el valor desde el script. En el caso de actualizaciones de fila, un desencadenador de la
base de datos podría suministrar este valor (siempre y cuando la base de datos admita
desencadenadores).
Otra alternativa para analizar original.usertime en el script consiste en llamar a AssignValue(),
especificando el nombre de columna como primer parámetro y una cadena vacía (" ") como el
segundo. Esto indica a Document Distributor que llame a la función de hora de ODBC
correspondiente al tipo de datos SQL de la columna. Esta correspondencia se muestra en la tabla
siguiente con el valor resultante.
Tipo de datos SQL
Función ODBC
Formato de hora
SQL_TYPE_DATE
CURDATE()
AAAA-MM-DD
SQL_TYPE_TIME
CURTIME()
HH:MM:SS[.dddddd]
SQL_TYPE_TIMESTAMP NOW()
AAAA-MM-DD HH:MM:SS[.ddddd]
Referencia de ODBC
229
Referencia de códigos de barras
Cada simbología de códigos de barras tiene sus propias reglas para la representación de
caracteres, longitud, comprobación de errores y otras características. Difieren en el modo en que
se representan los datos y los tipos de información que se pueden codificar: números, caracteres
en mayúsculas, letras en minúsculas y puntuación. Para obtener más información sobre los códigos
de barras, póngase en contacto con una organización de estándares del sector de códigos de
barras como una de las siguientes:
Organización de códigos de barras
Sitio Web
EAN International
www.ean-int.org
Uniform Code Council
www.uc-council.org
American National Standards Institute
www.ansi.org
En esta referencia se enumeran los códigos de barras que admiten las acciones BarcodeRead
y BarcodeWrite. Cada tabla incluye una descripción del tipo de código de barras, los caracteres
que admite, las restricciones de longitud, si requiere una suma de verificación, los distintos subtipos
admitidos y los nombres por los que se conocen. También se proporciona información adicional
que pueda resultar útil para leer o escribir los códigos de barras.
Codabar
Descripción
Se utiliza habitualmente en bancos de sangre, bibliotecas, sistemas
de paquetería y otras aplicaciones de procesamiento de información.
Juego de
caracteres
Números: 0 – 9
Símbolos: guión (-), dos puntos (:), punto (.), signo de dólar ($), barra
diagonal (/), signo más (+)
Inicio/fin: A, B, C, D
Longitud
Variable
Suma de
verificación
Ninguna definida
Tipos admitidos
LDD_BARCODE_CODABAR
También se
denomina
USD-4, NW-7, 2 of 7 Code
Referencia de códigos de barras
230
BarcodeRead
Los datos devueltos por la acción incluyen los caracteres de inicio y fin.
BarcodeWrite
Los datos a codificar deben empezar con uno de los caracteres de inicio
y terminar con uno de los caracteres de fin. Los caracteres de inicio y fin no
tienen que coincidir.
Code 2 of 5
Descripción
Formato de código de barras antiguo; normalmente se utilizaba para
numerar billetes de avión, acabado fotográfico e industrias de clasificación
de almacenes.
Juego de
caracteres
Sólo numéricos (0 – 9)
Longitud
Variable
Suma de
verificación
Ninguna definida
Tipos admitidos
Industrial o estándar: LDD_BARCODE_C25_INDUSTRIAL
Matrix: LDD_BARCODE_C25_MATRIX
DataLogic: LDD_BARCODE_C25_DATALOGIC
Airline: LDD_BARCODE_C25_AIRLINE
También se
denomina
Code 25
Referencia de códigos de barras
231
Code 3 of 9
Descripción
Utilizado habitualmente en muchos sectores. Formato de código de barras
estándar para las especificaciones del gobierno de Estados Unidos.
Juego de
caracteres
Letras en mayúsculas: A – Z
Números: 0 – 9
Símbolos: espacio, guión (-), punto (.), signo de dólar ($), barra diagonal (/),
signo más (+), signo de porcentaje (%)
Longitud
Variable (se recomienda un máximo de 25)
Suma de
verificación
Opcional
Tipos admitidos
Sin suma de verificación: LDD_BARCODE_CODE39
Con suma de verificación: LDD_BARCODE_CODE39_CHK
También se
denomina
USD-3, Code 39
Nota
No se admite Code 39 Extended. Se recomienda el formato Code 128 en
vez de éste porque codifica la información más eficazmente, lo que da como
resultado una mayor densidad y capacidad.
BarcodeRead
Si se utiliza la suma de verificación, no se incluirá en los datos devueltos
por esta acción.
BarcodeWrite
Si se utiliza la suma de verificación, se calcula automáticamente y se
agrega al código de barras. No incluya la suma de verificación en los datos
a codificar que se pasan a esta acción.
Code 93
Descripción
Formato compacto de Code 39; no se utiliza tanto como Code 39.
Juego de
caracteres
Letras en mayúsculas: A – Z
Números: 0 – 9
Símbolos: espacio, guión (-), punto (.), signo de dólar ($), barra diagonal (/),
signo más (+), signo de porcentaje (%)
Longitud
Variable (se recomienda un máximo de 25)
Suma de
verificación
Requerida
Tipos admitidos
LDD_BARCODE_CODE93
También se
denomina
USS 93
Nota
No se admite Code 93 Extended.
Referencia de códigos de barras
232
BarcodeRead
La suma de verificación no se incluirá en los datos devueltos por esta acción.
BarcodeWrite
La suma de verificación se calcula automáticamente y se agrega al código de
barras. No la incluya en los datos a codificar que se pasan a esta acción.
Code 128
Descripción
Se utiliza habitualmente en bancos de sangre, bibliotecas, sistemas de
paquetería y otras aplicaciones de procesamiento de información.
Juego de
caracteres
ASCII 0 – ASCII 127
Longitud
Variable
Suma de
verificación
Ninguna definida
Tipos admitidos
Code 128 A, Code 128 B, Code 128 C, Code 128 Autoswitch
LDD_BARCODE_CODE128
También se
denomina
128
EAN-8
Descripción
Se utiliza en todo el mundo (excepto en Estados Unidos y Canadá) para la
comercialización de productos al detalle. Es la forma comprimida de EAN-13
para su uso en productos con espacio de etiquetado pequeño.
Juego de
caracteres
Sólo numéricos (0 – 9)
Longitud
7 (6 de datos y 1 de suma de verificación)
Suma de
verificación
Requerida
Tipos admitidos
Estándar: LDD_BARCODE_EAN8
Estándar + 2 dígitos complementarios: LDD_BARCODE_EAN8_PLUS2
Estándar + 5 dígitos complementarios: LDD_BARCODE_EAN8_PLUS5
Nota
Este formato de código de barras sigue una estructura estricta según lo
definido en UCC. Póngase en contacto con dicha organización para obtener
la especificación más reciente de este código de barras.
BarcodeRead
La suma de verificación no se incluirá en los datos devueltos por esta acción.
BarcodeWrite
La suma de verificación se calcula automáticamente y se agrega al código de
barras. La cadena de datos se debe codificar para que tenga exactamente 6
caracteres; no calcule la suma de verificación.
Referencia de códigos de barras
233
EAN-13
Descripción
Se utiliza en todo el mundo (excepto en Estados Unidos y Canadá) para la
comercialización de productos al detalle.
Juego de
caracteres
Sólo numéricos (0 – 9)
Longitud
13 (12 de datos y 1 de suma de verificación)
Suma de
verificación
Requerida
Tipos admitidos
Estándar: LDD_BARCODE_EAN13
Estándar + 2 dígitos complementarios: LDD_BARCODE_EAN13_PLUS2
Estándar + 5 dígitos complementarios: LDD_BARCODE_EAN13_PLUS5
Nota
Este formato de código de barras sigue una estructura estricta según lo
definido en UCC. Póngase en contacto con dicha organización para obtener
la especificación más reciente de este código de barras.
BarcodeRead
La suma de verificación no se incluirá en los datos devueltos por esta acción.
BarcodeWrite
La suma de verificación se calcula automáticamente y se agrega al código de
barras. La cadena de datos se debe codificar para que tenga exactamente 12
caracteres; no calcule la suma de verificación.
ITF
Descripción
Código de barras compacto utilizado habitualmente en aplicaciones de
almacenaje e industriales.
Juego de
caracteres
Sólo numéricos (0 -9)
Longitud
Variable
Suma de
verificación
Opcional (si se utiliza la suma de verificación, se debe codificar un número
par de caracteres)
Tipos admitidos
Sin suma de verificación: LDD_BARCODE_ITF
Con suma de verificación: LDD_BARCODE_ITF_CHK
También se
denomina
Interleaved 2 of 5
BarcodeRead
Si se utiliza la suma de verificación, no se incluirá en los datos devueltos por
esta acción.
BarcodeWrite
Si se utiliza la suma de verificación, se calcula automáticamente y se agrega
al código de barras. No la calcule. Asimismo, observe que al utilizar la suma
de verificación se debe codificar un número par de caracteres.
Referencia de códigos de barras
234
Patch
Descripción
Códigos especializados que se utilizan para separar trabajos de digitalización
por lotes.
Juego de
caracteres
N/D
Longitud
Variable
Suma de
verificación
N/D
Tipos admitidos
LDD_BARCODE_PATCH
BarcodeWrite
No lo admite esta acción.
PDF-417
Descripción
Código de barras bidimensional que puede almacenar una gran cantidad de
información. Este formato resulta muy útil en aplicaciones de flujo de trabajo
que requieren que un documento transporte una gran cantidad de información.
Juego de
caracteres
Todos los caracteres ASCII
Longitud
Variable
Suma de
verificación
La corrección de errores incorporada en el formato no requiere una suma
de verificación.
Tipos admitidos
LDD_BARCODE_PDF417
Referencia de códigos de barras
235
UCC 128
Descripción
Versión especializada de Code 128 desarrollada por Uniform Code Council
(UCC) que permite a las empresas intercambiar datos de códigos de barras
en un formato común.
Juego de
caracteres
ASCII 0–ASCII 127
Longitud
Variable
Suma de
verificación
Requerida
Tipos admitidos
LDD_BARCODE_UCC128
También se
denomina
EAN 128, UCC/EAN 128
Nota
Este formato de código de barras sigue una estructura estricta según lo
definido en UCC. Póngase en contacto con dicha organización para obtener
la especificación más reciente de este código de barras.
BarcodeRead
La suma de verificación no se incluirá en los datos devueltos por esta acción.
BarcodeWrite
La suma de verificación se calcula automáticamente y se agrega al código de
barras. No la incluya en los datos a codificar que se pasan a esta acción.
UPC-A
Descripción
Se utiliza en Estados Unidos y Canadá para la comercialización de productos
al detalle.
Juego de
caracteres
Sólo numéricos (0 -9)
Longitud
13 (12 de datos y 1 de suma de verificación)
Suma de
verificación
Requerida
Tipos admitidos
LDD_BARCODE_UPCA
Nota
Este formato de código de barras sigue una estructura estricta según lo
definido en UCC. Póngase en contacto con dicha organización para obtener
la especificación más reciente de este código de barras.
BarcodeRead
La suma de verificación no se incluirá en los datos devueltos por esta acción.
BarcodeWrite
La suma de verificación se calcula automáticamente y se agrega al código de
barras. La cadena de datos se debe codificar para que tenga exactamente 12
caracteres; no calcule la suma de verificación.
Referencia de códigos de barras
236
UPC-E
Descripción
Se utiliza en Estados Unidos y Canadá para la comercialización de productos
al detalle. Es la forma comprimida de UPC-A para su uso en productos con
espacio de etiquetado pequeño.
Juego de
caracteres
Sólo numéricos (0 -9)
Longitud
7 (6 de datos y 1 de suma de verificación)
Suma de
verificación
Requerida
Tipos admitidos
LDD_BARCODE_UPCE
Nota
Este formato de código de barras sigue una estructura estricta según lo
definido en UCC. Póngase en contacto con dicha organización para obtener
la especificación más reciente de este código de barras.
BarcodeRead
La suma de verificación no se incluirá en los datos devueltos por esta acción.
BarcodeWrite
La suma de verificación se calcula automáticamente y se agrega al código de
barras. La cadena de datos se debe codificar para que tenga exactamente 6
caracteres; no calcule la suma de verificación.
Referencia de códigos de barras
237
Referencia de metadatos
A partir de la versión LDD 3.1, los scripts pueden anular la operación estándar de copia, fax e e-mail
en las impresoras multifunción con pantalla táctil. Para la interfaz de usuario estándar permite que
las funciones estén presentes en la pantalla táctil, pero cuando se pulsa el botón de inicio, en su
lugar se ejecuta un perfil LDD. Si el script especifica que un documento que no es necesario se
envíe, la impresora multifunción ejecutará la operación normal de copia/fax/e-mail y enviará los
valores utilizados para finalizar dicha operación después de digitalizar la última página. Si el script
especifica que es necesario un documento, los datos de imagen se envían a Document Server, junto
con los valores solicitados del usuario.
Para determinar si una impresora multifunción admite la función de anulación, agregue la impresora
a Server Manager y visualice su bloc de notas. Si hay una ficha Pantalla de bienvenida, la admite.
A continuación se muestra una lista de los valores que se envían según el tipo de función de
anulación que se ofrece. En la última sección de esta referencia se explicará cómo acceder a estos
valores desde un script.
Opciones de digitalización
Las opciones de digitalización se envían con cada trabajo. Se trata de los valores utilizados para
digitalizar el documento; no indican la acción realizada con el documento. Estos valores se envían
además de los valores disponibles con cada función de anulación concreta.
Para acceder a cada valor:
scanOptions.settingName
Valores
Valores válidos
nUpBorder
true
Información adicional
false
n-Up
1-Up
2-Up Portrait
2-Up Landscape
4-Up Portrait
4-Up Landscape
marginShift
real
Pulgadas para desplazar margen izquierdo
xScale
real
Porcentaje para escalar la dimensión X
yScale
real
Porcentaje para escalar la dimensión Y
Referencia de metadatos
238
Valores
Valores válidos
Información adicional
edgeErase.topMargin
real
Pulgadas para borrar el margen superior
edgeErase.bottomMargin
real
Pulgadas para borrar el margen inferior
edgeErase.rightMargin
real
Pulgadas para borrar el margen derecho
edgeErase.leftMargin
real
Pulgadas para borrar el margen izquierdo
bookOriginal
0
0 = activado; 1 = desactivado
1
bookWidth
int
Sólo válido si bookOriginal = 1; anchura en milímetros
bookHeight
int
Sólo válido si bookOriginal = 1; altura en milímetros
bookGutter
int
Sólo válido si bookOriginal = 1; medianil en milímetros
contentType
Text
Combo
Photo
darkness
Value from 1 to 9
depth
1
1 = Blanco y negro
8
8 = Escala de grises de 8 bits
24
24 = Color de 24 bits
duplex
Simplex
Long Edge Bound
Short Edge Bound
Referencia de metadatos
239
Valores
Valores válidos
Información adicional
mediaSize
Unknown
Tamaño de papel del documento digitalizado.
Letter US
A4 INTERNATIONAL
Universal No Size
Feeder
Executive
Letter
Legal
Tabloid
A3
A4
A5
B4
JIS B4
B5
JIS B5
Folio
Statement
AutoSize
Mixed
orientation
Landscape
Portrait
resolution
600
La resolución de la digitalización de un trabajo
de anulación es siempre 600 ppp.
Las siguientes opciones de digitalización sólo están presentes si el perfil especifica que no se va
a enviar ningún documento:
Valores
Valores válidos
Información adicional
pagesScanned
int
Número de páginas digitalizadas
scanCanceled
true
Indica si el usuario ha cancelado la digitalización
antes de finalizarla.
false
Referencia de metadatos
240
Opciones de copia
Las opciones de copia se envían cuando se anula la función Copia.
Para acceder a cada valor:
copyOptions.settingName
Valores
Valores válidos
Información adicional
outputBin
Value from 0 to 20
0 = Salida estándar; 1 – 20 = Salida X
holePunch
true
Indica si el usuario desea que se perfore la copia
impresa.
false
booklet
true
Indica si el usuario desea que la copia impresa
esté en formato de folleto.
false
orientation
Landscape
Indica la orientación solicitada de la copia impresa.
Portrait
mediaSource
MPFEEDER
Indica el origen del papel del que seleccionar
el papel cuando se realiza la copia.
MANUAL
TRAY1
TRAY2
TRAY3
TRAY4
TRAY5
numberOfCopies
int
Entero que indica el número de copias que se va
a realizar.
messageOverlay
None
Indica si el usuario desea que se superponga un
mensaje en la copia impresa.
Urgent
Confidential
Copy
Draft
staple
None
Indica si el usuario desea que se grape la copia
impresa.
Top Left Portrait
Double Left Portrait
Top Left Landscape
Referencia de metadatos
241
Valores
Valores válidos
Información adicional
mediaSize
Unknown
Indica el tamaño de papel en el que el usuario
desea realizar las copias.
Letter US
A4 INTERNATIONAL
Universal No Size Feeder
Executive
Letter
Legal
Tabloid
A3
A4
A5
B4
JIS B4
B5
JIS B5
Folio
Statement
AutoSize
Mixed
duplex
Simplex
Long Edge Bound
Indica si el usuario desea que las copias estén
en formato dúplex.
Short Edge Bound
collate
true
false
dateTimeStamp
true
false
Indica si el usuario desea que las copias se
clasifiquen.
Indica si el usuario desea que se agregue la fecha
o el sello de hora a la copia impresa.
Referencia de metadatos
242
Valores
Valores válidos
Información adicional
mediaType
NORMAL
Tipo de papel en el que se realiza la copia impresa.
TRANSPARENCY
CARDSTOCK
LETTERHEAD
ROUGH
LABELS
BOND
PREPRINTED
COLOR
COATED
GLOSSY
PHOTO
CUSTOM1
CUSTOM2
CUSTOM3
CUSTOM4
CUSTOM5
CUSTOM6
separatorSheets
true
false
outputBin
Value from 0 to 20
Indica si el usuario desea hojas de separación
entre las copias.
0 = Salida estándar; 1 – 20 = Salida X
Referencia de metadatos
243
Opciones de fax
Las opciones de fax se envían cuando se anula la función Fax.
Para acceder a cada valor:
faxOptions.settingName
Valores
Valores válidos
Información adicional
destinations.num<n>
string
Número de fax que se va a utilizar. Se aceptan varios
números; se devuelven como destinations.num0,
destinations.num1, etc.
resolution
Standard
Fine
Super Fine
Ultra Fine
time
int
Retraso al enviar el fax hasta la hora especificada.
Valor 0 significa envío inmediato. De lo contrario, el
valor es el retraso en el tiempo de envío menos el
número de segundos desde el 1 de enero de 1970,
00:00:00 GMT.
coverPageToField
string
Valor del campo Para que se va a utilizar en la portada.
coverPageFromField
string
Valor del campo De que se va a utilizar en la portada.
stationName
string
Nombre de la estación de fax.
stationNumber
string
Número de teléfono de la estación de fax.
faxMode
analog
Indica si la impresora multifunción está configurada
para enviar el fax mediante una línea analógica o un
mensaje de e-mail a un servidor de fax.
faxServer
Si faxMode es igual a faxServer, se incluirán las siguientes opciones de fax:
Valores
Valores válidos
Información adicional
fileFormat
PDF
Formato de archivo en el que se envía la imagen
al servidor de fax.
JPEG
TIFF
PS
message
string
Cuerpo del mensaje de e-mail enviado al servidor de fax.
replyAddress
string
Dirección de respuesta suministrada con el mensaje de
e-mail enviado al servidor de fax.
subject
string
Asunto del mensaje de e-mail enviado al servidor de fax.
toField
string
Formato del campo Para enviado como parte del
mensaje de e-mail al servidor de fax. El lugar donde se
debe suministrar el número de teléfono aparece indicado
por [#]. Se debe buscar este símbolo en el campo Para y
sustituirse con cada uno de los destinos.
Referencia de metadatos
244
Opciones de e-mail/FTP
Las opciones de e-mail se envían cuando se anula la función de e-mail y se selecciona un destino
de e-mail.
Para acceder a cada valor:
emailOptions.settingName
Valores
Valores válidos
Información adicional
destinations.num<n>
string
Dirección de e-mail que se va a utilizar. Se
aceptan varias direcciones; se devuelven como
destinations.num0, destinations.num1, etc.
documentFormat.type
PDF
Formato de archivo con el que se debe enviar
el anexo de e-mail.
JPEG
TIFF
PS
from
string
Dirección de origen del mensaje de e-mail
subject
string
Asunto del e-mail
message
string
Mensaje del e-mail
primarySMTPGateway
string
Dirección IP del servidor SMTP principal
primarySMTPPort
int
Puerto IP utilizado por el servidor SMTP principal
secondarySMTPGateway
string
Dirección IP del servidor SMTP secundario
secondarySMTPPort
int
Puerto IP utilizado por el servidor SMTP secundario
SMTPTimeout
int
Tiempo de espera en segundos
Las opciones de FTP se envían cuando se anula la función de e-mail y se selecciona un destino de FTP.
Para acceder a cada valor:
ftpOptions.settingName
Valores
Valores válidos
Información adicional
ftpDestination.logonID
string
ID de usuario utilizado para conectarse al
servidor FTP
ftpDestination.password
string
Contraseña utilizada para conectarse al
servidor FTP
ftpDestination.ftpServer
string
Dirección IP del servidor FTP
ftpDestination.ftpPort
int
Puerto IP utilizado por el servidor FTP
ftpDestination.filePath
string
Ruta de acceso al archivo en el servidor FTP
ftpDestination.documentFormat.type
PDF
Formato con el que se debe guardar el archivo
en el servidor FTP
JPEG
TIFF
PS
Referencia de metadatos
245
Acceso a los datos de anulación en un script
Una vez que se transfiere la información de anulación a un script LDD, accede a él mediante la
propiedad original.metadata. Esta propiedad es de asignación de tipo de datos. Una asignación
consta de categorías; cada categoría puede contener subcategorías y/o pares de clave/valor. Con
los valores anteriores, cualquier palabra con un punto (".") al final se considera una categoría.
Por ejemplo, para acceder al número de copias solicitado por el usuario final:
map copyopts = original.metadata.GetCategory("copyOptions")
int numcopies = copyopts.GetValue("numberOfCopies").AsInt()
Continuando con el ejemplo anterior, determine el número de páginas utilizado para copiar el
documento asumiendo que se usan las opciones Símplex y que no se usa N en una:
map scanopts = original.metadata.GetCategory("scanOptions")
int numpages = scanopts.GetValue("pagesScanned").AsInt()
int totalpages = numcopies * numpages
Para acceder a los números de fax:
map faxopts = original.metadata.GetCategory("faxOptions")
map dests = faxopts.GetCategory("destinations")
stringarray nums = dests.GetKeyList()
string num
int i
loop (i from 1 to nums.GetSize())
num = dests.GetValue(nums[i])
endloop
Referencia de metadatos
246
Lexmark y Lexmark con diamante son marcas comerciales de Lexmark International, Inc.,
registradas en los Estados Unidos y/o en otros países.
© 2003 Lexmark International, Inc.
740 West New Circle Road
Lexington, Kentucky 40550
www.lexmark.com
Descargar