OLE:
Es una tecnología que permite la interconexión entre procesos iguales o diferentes,
entre las características de los objetos OLE hay para vincular( Linked ), incrustar(
Embbeded ) y arrastrar y soltar( drag and drop ). En sus principios OLE se refería
a un número mayor de tecnologías, muchas de las cuales han sido sustituídas por la
terminología ActiveX. Si un entorno o herramienta permiten la Automatización OLE
se podrán construir aplicaciones sumamente potentes con un minimo esfuerzo, un ejemplo
típico son los exploradores de internet desde los que se puede abrir una ventana en la
que se muestra el entorno de una aplicación con toda su potencia( como por ejemplo
MS-Excel ).
OBJETO:
Es una entidad con una personalidad y comportamiento propio, la personalidad está
representada por los atributos o propiedades del objeto y la capacidad que este tiene para
realizar cosas mediante los metodos. El comportamiento está representado por la reacción
del objeto ante acciones llevadas a cabo por ajentes externos y se represena por los
eventos. En cuanto a los lenguajes de programación orientados a objetos, estos se
corresponden con las clases. Un ejemplo tipico es el Visual Basic, con el que se crean
formularios y se dibujan controles sobre estos. Tanto los formu larios como los controles
son objetos de clases distintas y que cada uno tiene sus propias propiedades y metodos.
El siguiente ejemplo desarrollado en Visual Basic usa el Objeto Word para automatizar la
escritura de una carta usando MS-Word 97.
Option Explicit
Public objWord As Object
Function constructor()
Dim n As Integer
Set objWord = CreateObject("Word.application")
objWord.Visible = True
objWord.Documents.Add
objWord.Selection.TypeText "Francisco Reyes de la Rosa"
objWord.Selection.TypeParagraph
objWord.Selection.TypeText "Castellana 200,1ºC"
objWord.Selection.TypeParagraph
objWord.Selection.TypeText "28001-MADRID"
objWord.Selection.TypeParagraph
objWord.Selection.TypeParagraph
objWord.Selection.TypeText Chr$(9) + Chr$(9)
objWord.Selection.TypeText "Dos tabulaciones"
' objWord.Documents.Close
End Function
A partir de la versión 3.0 el lenguaje ABAP se enriqueció con nuevas instrucciones que
permiten la comunicación OLE2 con otros programas, como por ejemplo las aplicaciones de
la suite Office 97 de Microsoft. Las sentencias OLE2 de ABAP son las siguientes:
| Sentencia | Función |
| CREATE OBJECT | Crea un objeto |
| SET PROPERTY | Asigna valor a una propiedad del objeto |
| GET PROPERTY | Obtiene( lee ) el valor de una propiedad del objeto |
| CALL METHOD | Invoca la ejecución del un metodo del objeto |
| FREE OBJECT | Mata al objeto para liberar la memoria que este ocupa |
Debe tenerse en cuenta que existen otroas técnicas de comunicación entre SAP R/3 y
otros entornos. Por ejemplo es posible crear aplicaciones en Visual Basic for
Applications( VBA ) desde Excel o Word que realicen llamadas RFC
a SAP R/3.
El siguiente es un programa cuya función es similar al escrito en Visual Basic al inicio
de este documento.
REPORT ZFROBJETOSWORD NO STANDARD PAGE HEADING.
* --------------------------------------------------------------------
* --------------------------------------------------------------------
* Programa : zfrobjetosword
* autor : Francisco Reyes
* fecha : 13 de abril del 2000
* objetivo : Imprimir cartas de exceso creditos
* --------------------------------------------------------------------
* tablas de los objetos utilizadas
* objeto descripción
* objword objeto tipo word.application
* doc objeto tipo objword.documents
* sel objeto tipo doc.selection
* --------------------------------------------------------------------
* Descripción del proceso
* 1.- Se establece el include de ole2incl para la definicion de objetos
* 2.- Crean los objetos necesarios objword, doc y sel
* 3.- Alimenta las propiedades necesarias y llama los metodos a usar
* --------------------------------------------------------------------
* --------------------------------------------------------------------
INCLUDE OLE2INCL.
DATA: OBJWORD TYPE OLE2_OBJECT,
DOC TYPE OLE2_OBJECT,
SEL TYPE OLE2_OBJECT.
DATA: N1 TYPE I,
N2 TYPE I,
R TYPE I, RESULTADO(3), TEXTOACARTA(80),
X TYPE X VALUE '09'.
N1 = 6. N2 = 2. R = N1 * N2. RESULTADO = R.
CONCATENATE 'Esta es la mejor prueba de I+D de la UAX,'
'resultado es:'
RESULTADO
INTO TEXTOACARTA
SEPARATED BY SPACE.
CREATE OBJECT OBJWORD 'Word.Application'.
SET PROPERTY OF OBJWORD 'Visible' = 1.
CALL METHOD OF OBJWORD 'Documents' = DOC.
CALL METHOD OF DOC 'Add'.
CALL METHOD OF OBJWORD 'Selection' = SEL.
CALL METHOD OF SEL 'TypeText'
EXPORTING # = 'Francisco Reyes de la Rosa'.
CALL METHOD OF SEL 'TypeParagraph'.
CALL METHOD OF SEL 'TypeParagraph'.
CALL METHOD OF SEL 'TypeText'
EXPORTING # = 'Castellna 100,1ºC'.
CALL METHOD OF SEL 'TypeParagraph'.
CALL METHOD OF SEL 'TypeParagraph'.
CALL METHOD OF SEL 'TypeText'
EXPORTING # = TEXTOACARTA.
CALL METHOD OF SEL 'TypeParagraph'.
CALL METHOD OF SEL 'TypeParagraph'.
CALL METHOD OF SEL 'TypeText'
EXPORTING # = X.
CALL METHOD OF SEL 'TypeText'
EXPORTING # = 'Un tabulador'.
*ALL METHOD OF doc 'Close'.
Página mantenida por Francisco A. Reyes