Está en la página 1de 8

Curso Avanzado de ADVPL

ADVPL AVANZADO
Fabrica de Software

Material de Apoyo para Curso

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 1


Curso Avanzado de ADVPL

Contenido
1. Clase MsDialog.
1.1 Métodos
1.2 Ejemplo

2. Clase MsMGet.
2.1 Métodos
2.2 Ejemplo

3. Clase MsNewGetDados
3.1 Métodos
3.2 Ejemplo

4. Clase TWBrowse.
4.1 Propiedades
4.2 Métodos
4.3 Ejemplo

5. Impresión en Modo Gráfico.


5.1 Gatillos
5.2 Funciones para Registro de Datos
5.2.1 aXcadastro
5.2.2 Pantalla Modelo2
5.2.3 Pantalla Modelo3
5.3 Validaciones de Campo (Valid y When)

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 2


Curso Avanzado de ADVPL

5.4 Regla de avance (Processa, IncProc(),etc.)


5.5 Impresión en modo texto
5.6 Puntos de entrada

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 3


Curso Avanzado de ADVPL

1. Clase MsDialog.
Clase de diálogo para entrada de datos.
MSDialog debe ser utilizada como ventana estándar para la entrada de datos. MSDialog es un tipo de ventana de diálogo modal,
esto es, no permite que otra ventana activa reciba datos en cuanto esta este activa.

1.1 Métodos.

 New
Descripción Método constructor de la clase.
New([anTop], [anLeft], [anBottom], [anRight], [acCaption], [cPar6], [nPar7], [lPar8], [nPar9], [anClrText],
Sintaxis
[anClrBack], [oPar12], [aoWnd], [alPixel], [oPar15], [oPar16], [lPar17])
Parámetro Tipo / Descripción
anTop Numérico, opcional. Coordenada vertical superior en píxeles o caracteres.
anLeft Numérico, opcional. Coordenada horizontal izquierda en píxeles o caracteres.
anBotom Numérico, opcional. Coordenada vertical inferior en píxeles o caracteres.
anRight Numérico, opcional. Coordenada horizontal derecha en píxeles o caracteres.
acCaption Caracter, opcional. Título de ventana.
cPar6 Reservado.
nPar7 Reservado.
lPar8 Reservado.
Parâmetr nPar9 Reservado.
anClrText Numérico, opcional. Color do texto.
os
anClrBack Numérico, opcional. Color de fondo.
oPar12 Reservado.
aoWnd Objeto, opcional.
Lógico, opcional. Si .T. considera las coordenadas pasadas en píxeles, si .F. considera
alPixel
caracteres.
oPar15 Reservado.
oPar16 Reservado.
nPar17 Reservado.

Retorno Un Diálogo criado.

1.2 Ejemplo.

#INCLUDE “protheus.ch”

User Function Teste()

// cria diálogo

Local oDlg:=MSDialog():New(10,10,300,300,”Meu dialogo”,,,,,CLR_BLACK,CLR_WHITE,,,.T.)

// ativa diálogo centralizado

oDlg:Activate(,,,.T.,{||msgstop(“validou!”),.T.},,{||msgstop(“iniciando…”) )

Return

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 4


Curso Avanzado de ADVPL

2. Clase MsMGet.
La clase MsMGet o Enchoice es el modelo mas utilizado para realizar mantenimiento de registros al sistema. Sea una inclusión,
alteración, consulta o borrado, este componente puede ser utilizado para manipular los campos de una tabla de datos definida en
el diccionario de campos (SX3).
mbo, Memo, CheckBox).

2.1 Métodos.
 New

Sintaxis New(cAlias,nReg,nOpc,NIL,NIL,NIL,
aFields,aEnchCoords,NIL,NIL,NIL,NIL,NIL,NIL,NIL,.F.,.F.)
Argumento Tipo Descrição
cAlias Carácter Tabla registrada en Diccionario de Tablas (SX2) que será editada.
nReg (NULO) Parámetro no utilizado.
Número da línea de aRotina que definirá el tipo de edición (Incluir, Alterar, Excluir,
nOpc Numérico
Visualizar)
aFields Array Vetor com nome dos campos que serão exibidos
aEnchCoords Array Parametro não utilizado

Retorno
Tipo Descripción
(NULO) Nil

2.2 Ejemplo

MsmGet():New(“SA3",0,3,NIL,NIL, NIL,aFieldsSA3,aObjSize[1],NIL,NIL,NIL,NIL,NIL,NIL,.T.)

3. Clase MsNewGetDados.
Un MsNewGetDados es un componente utilizado para la construcción de grids de digitación/exhibición. Algunas propiedades son:

 Inclusión, alteración y borrado de líneas.


 Considera los tipos de campo y sus propiedades (calculadora para números, calendario para fechas, lista de opciones,
F3 – busqueda en otras tablas, etc)
 Validación por línea y validación después de todo procedimiento.
 Aplicación de las propiedades de los campos del diccionario (x3_valid, x3_cbox, x3_f3, etc) y permite el uso de gatillos
(SX7).

3.1 Métodos y propiedades.


 New

Crea un objeto MsGetDados.

Sintaxis

MsNewGetDados():New(nSuperior, nEsquerda, nInferior, nDireita, nOpcNewGd, bLinOk, cTudoOk, cCamCon, aSZ2GdAltera, 0,


NIL, NIL, NIL, bDelOk, oDlg, aSZ2Header, aSZ2Cols) -> objeto

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 5


Curso Avanzado de ADVPL

Argumentos Descrição
nSuperior Línea Inicial
nEsquerda Columna Inicial
nInferior Línea Final
nDireita Columna Final
nOpcNewGd Tipo de funcionalidad en Items
bLinOk Función que valida la línea actual
cTudoOk función que valida que todo este ok
cCamCon Nombre del campo que llevara un consecutivo automático
aSZ2GdAltera Los campos que podrán ser alterados
bDelOk Función para borrado de Línea
oDlg Objeto en el cual getDados será creada
aSZ2Header Arreglo de Encabezado auxiliar
aSZ2Cols Arreglo de Columna auxiliar.

Retorno

Objeto. 

 ForceRefresh

Actualiza a MsGetDados con un aCols y posiciona en la primera línea.

Sintaxis

oObjeto:ForceRefresh() 

 Hide

Esconde el MsGetDados.

Sintaxis

 oObjeto:Hide()

 Show

Muestra a MsGetDados.

Sintaxis

oObjeto:Show()

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 6


Curso Avanzado de ADVPL

3.2 Ejemplo.

MsNewGetDados():New(aObjSize[2,1],aObjSize[2,2],aObjSize[2,3],aObjSize[2,4],nOpcNewGd,bLinOk,NIL,NIL,aSZ2GdAltera,0,NI
L,NIL,NIL,bDelOk,oDlg,aSZ2Header,aSZ2Cols)

4. TWBrowse.
Permite construir un Browse, especificando sus columnas de modo directo.

4.1 Propiedades.
Argumento Tipo Descripción
Acción a ejecutar cuando se ha realizado un doble-clic sobre una celda de datos
blDblClick Code-Block
del Browse.
Align Numérico Alineación actual del componente en la interfase.
Define las columnas del Browse que pueden ser "arrastradas" y cambiadas de
lColDrag Lógico
posición.

4.2 Métodos.

 New

Sintaxis

TWBrowse():New ( [ nRow ] , [ nCol ] , [ nWidth ] , [ nHeigth ] , < bLine > , < aHeaders > , [ aColSizes ] , [ oWnd ] , [ cField ] ,
[ cTopLimit ] , [ cBottomLiit ] , [ bChange ] , [ bLDblClick ] , [ Param14 ] , [ oFont ] , [ Param16 ] , [ nClrFore ] , [ nClrBack ] ,
[ Param19 ] , [ Param20 ] , [ cAlias ] , [ lPixel ] , [ Param23 ] , [ Param24 ] , [ Param25 ] , [ bScroll ] , [ Param27 ] ) -->
oObjTWBrowse

Parâmetros

Argumento Tipo Descrição


nRow Numérico Coordenada vertical inicial del Objeto.
nCol Numérico Coordenada horizontal inicial del Objeto
nWidth Numérico Tamaño horizontal del objeto
nHeigth Numérico Tamaño vertical del objeto
Bloque de código, que debe retornar un array, con una dimensión, donde deben
bLine Code-Block
ser retornados los strings referentes a los elementos referentes de las del Browse.
Array, que debe retornar un array, con una dimensión, conteniendo los strings
aHeaders Array
referentes a los Títulos de las columnas del Browse.
Array, con una dimensión, donde deben ser retornados los números referentes al
aColSizes Array tamaño horizontal de las columnas del Browse. En caso de especificar NIL, los
tamaños de las columnas son calculados automáticamente.
oWnd Objeto Objeto visual sobre el cual el tWBrowse será criada.
Utilizado para especificar a expresión de índice para definición de límite superior e
cField Caracter inferior del Browse. Este parámetro es utilizado cuando se realiza un browse de
una tabla, abierta con un alias, con una expresión de índice.
Utilizado para especificar un string, de acuerdo con a llave de índice pasad en
cField, a ser utilizada para identificar el limite superior del Browse. Apenas
cTopLimit Caracter
debemos informar el contenido de este, en caso que parámetro cField sea
especificado.
cBottomLiit Caracter Utilizado para especificar un string, de acuerdo con una llave de índice pasada en

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 7


Curso Avanzado de ADVPL

cField, a ser utilizada para identificar el limite inferior del Browse. Apenas debemos
informar el contenido de este, en caso que el parámetro cField sea especificado.
Acción a ser ejecutada cuando altera el foco entre las líneas del Browse. Recibe un
bChange Code-Block
objeto del Browse como parámetro.
Acción a ser ejecutada cuando se ejecuta un doble-clic sobre una celda del
bLDblClick Code-Block
Browse.
Param14 (NULO) ( parámetro reservado )
oFont Objeto Objeto referente a una fuente alternativa para exhibir los datos en este Browse.
Param16 (NULO) ( parámetro reservado )
Color de escrita los datos en TWBrowse. Verifique colores disponibles en include
nClrFore Numérico
"colors.ch"
nClrBack Numérico Color de fondo del área del TWBrowse.
Param19 (NULO) ( parámetro reservado )
Param20 (NULO) ( parámetro reservado )
Caso que Browse sea realizado sobre una tabla abierta, especifique el alias de la
cAlias Caracter
tabla a ser utilizada en este parámetro.
Caso .T., indica que las coordenadas de pantalla son especificadas en PIXELS.
lPixel Lógico
Caso contrario, son coordenadas especificadas en CARACTERES.
Param23 (NULO) ( parámetro reservado )
Param24 (NULO) ( parámetro reservado )
Param25 (NULO) ( parámetro reservado )
bScroll Lógico Caso .T., habilita la barra de scroll horizontal en botones de navegación vertical.
Param27 (NULO) ( parámetro reservado )

Retorno

Tipo Descripción
Objeto Retorna una nueva instancia del Objeto de la Clase TWBrowse.

Elaboro: Ing. Roberto J. Lagunas Méndez 30/05/2022 8

También podría gustarte