Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Los tipos de datos HHaannddllee (manija) son tipos especiales para identificar
un archivo, anu conexión SSQQLL o anu ventana mar según el caso; no son variables
con las que se pueden hacer operaciones ya que su función es sólo de identificador,
se utilizan cuando se hace uso de ciertas funciones.
44..11..11.. Ddee VVaarriiaabblleess SSQQLLWWiinnddoowwss
VVaarriiaabbllee Tipod eD ato ato
Menejo HHWWnnddNNUULLLL TipoD variable de ventana SqlDatabase Secuencia
HHWWnnddFFoorrmm ManejoV entana SqlUser Secuencia
Secuencia SqlPassword HHWWnnddIItteemm Ventana Manejo
Manejo HHWWnnddMMDDII Ventana SqlNoRecovery
WWppaarraamm Boolean Número Número SqllnMessage
MMyyVVaalluuee <ref.item corriente>
Boolean BBssttaattiiccssAAssWWiinnddoowwss - cuando es
puesto en true, los objetos pasivos ningún hijo pintados en el formulario, sino que
creados como objetos de ventana.
Número NNaarrggCCoouunntt
SSttrrAArrggAArrrryy[[**] Arreglos de secuencias
("String")
44..11..22.. Ddee CCaalliiffiiccaacciióónn VVaarriiaabblleess..
RReeffeerreenncciiaa SSiimmppllee:
<variable/objeto_nombre>Ejemplo: set = SalDateCurrent dfDate()
44..22.. AArrrreeggllooss..
En SQLwindows se pueden crear arreglos unimendisionales y
multidimensionales de los diferentes tipos de variables provistos. Antes de
explicar como operan los arreglos multidimensionales, se deberá entender como
declarar los de dimensión uno.
44..22..11.. AArrrreeggllooss UUnniiddiimmeennssiioonnaalleess..
AArrrreeggllooss UUnniiddiimmeennssiioonnaalleess EEssttááttiiccooss..
Si se conoce el número máximo de números de elementos que puede contener un
arreglo, específique el número entre corchetes [ ], al momento de declararlo:
AArrrreeggllooss UUnniiddiimmeennssiioonnaalleess DDiinnáámmiiccooss..
Si no se puede predecir el número máximo de elementos contenidos en un arreglo, se
deberá utilizar un asterisco (*) en lugar de un número fijo de elementos, esto le
indica una cola SQLWindows es un arreglo dinámico.
arreglos (vectores) fijos de 1 dim En pri ensiel ón, Elmer ej primeemplo r elem
ento ssPPaaiiss 0 s s nnVVaalloorreess el último hijo n-1.
En el segundo ejemplo ssEEmmpplleeaaddooss y ssDDeeppttooss hijo de tamaño
variables,
el primer elemento es el 0, pero el último depende de los elementos que se
almacenen en los arreglos.
44..22..22.. AArrrreeggllooss MMuullttiiddiimmeennssiioonnaalleess..
EEjjeerrcciicciioo.
1. Identifique los tipos de variables de acuerdo a la nomenclatura.
sTitulo _____________ nMaximo _____________ bFin _____________ nSqlMain
_____________ HWndPadre _____________
2. Declarar un arreglo unidimensional de 10 elementos del tipo Número.
SQLWindows 59
Ejemplo:
Llamada SSaallMMeessssaaggeeBBooxx( ' Error en la aplicación ', 'Altas',
MB_IconStopMB_Reintentarcancelar)
Las opciones pueden tener una combinación de valores, algunos de ellos
son:
MB_mb_IconExclamation IconAsterisk MB_REINTENTARCANCELAR MB_mb_IconHand
IconQuestion MB_YesNo MB_OK_mb_YesNoCancel IconStop MB MB_OkCancel
MB_AbortRetryIgnore
44..44.. SAL LLeenngguuaajjee ..
Para agregar código a la aplicación de los elementos del lenguaje
SSAALL((SSQQLLWWiinnddoowwss AApppplliiccaattiioonn LLaanngguuaajjee)), el cual
provee de un conjunto de instrucciones para programar acciones de la misma manera
como se hace en un lenguaje de tercera generación.
44..44..11.. SAL
SSeett IInnssttrruucccciioonneess ddeell LLeenngguuaajjee
SQLWindows 63
SS||iinnttaaxxiiss:::
IIff SSiinnttaaxxiiss SSiinnttaaxxiiss < condición > condición IIff <
1> condición IIff < 1> código 1 código 1 código 1
EEllssee IIff < 2 > condición condición EEllssee IIff < 2 > código 2
código 2 código 2
condición EEllssee EEllssee IIff < 3 >
• SQLWindows nOpción
Select Case Caso 2
Caso 3
Código un
reak
Caso B 4
Caso 5
Código B
LLoooopp
Si nIndice > 6
BBrreeaakk
llamada SalStrUpper([ ] nIndice Dias, Dias[ ] )
Conjunto nIndice nIndice nIndice
WWhhiillee = + 1.
La setencia WWhhiillee es muy parecido un LLoooopp, sólo que no necesita una
sentencia BBrreeaakk, ya que evalúa la expresión hasta que esta mar FFAALLSSEE, sin
embargo anu instrucción BBrreeaakk o RReettuurrnn concluirá el ciclo en forma
inmediata".
SSiinnttaaxxiiss:
WWhhiillee < condición >
EEjjeemmpplloo:
Llamada SqlFetchNext( hSql, nErr )
WWhhiillee nErr != EOF
codigo 1
Si < condición >
Devolver
llamada nErr SqlFetchNext( hSql, nErr )
RReettuurrnn
La instrucción RReettuurrnn concluye el procesamiento de cualquier código
que atiende un mensaje o bien, el código de una opción de menú.
Regresa el valor a la función que invocó o bien un SQLWindows.
SQLWindows 67
SSiinnttaaxxiiss::RReettuurrnn EEjjeemmpplloo:
Set = nParametro nIndice
nResultado Set = nIndice
bucle si nIndice < 0
Conjunto bError = TRUE
69
EEjjeemmpplloo:
IInntteerrnnaall FFuunnccttiioonnss
Función: Promedio
Descripción: Calcula el promedio de n números
SQLWindows 71
Devuelve
parámetros Number:
número: nValores [ * ]
Número: nCuantos
Variables estáticas
variables locales
Number:
número: nResultado nIndice
Actions Set
Set nIndice = 0 = 0
nResultado mientras nIndice < nCuantos
Set + nValores nResultado nResultado =[ ]
nIndice nIndice nIndice Set = + 1
= nResultado nResultado Set / nCuantos
EEjjeerrcciicciiooss nResultado de retorno.
EEjjeerrcciicciioo.
1. Cargue la aplicación de captura otorgó de clientes.
2. Agregue los mensajes necesarios para habilitar y deshabilitar los botones, en la
sección de GGlloobbaall CCoonnssttaannss en UUsseerr DDeeccllaarraattiioonnss:
debe modificar la propiedad de TTyyppee ooff DDiiaalloogg como tres formas, para
ello se se muestra en la figura.
Recuerde que el código contiene la plantilla de la ventana, para crear la
ventana se debe invocar la función correspondiente.
nnaa ión TTiippoo ddee VVeennttaa MMooddaall // C Acc SSyysstteemm SalModal trasera
Función Diálogo
Cerrar SalEndDialog MMooddaall()()
() Crear SalCreateWindow MMooddeelleessss
Cerrar SalDestroyWindow()
SQLWindows 81
44..77..11..
• VVeennttaannaass MMaanneejjoo ddee Al crear una ventana el MSWindows establece un
valor de manejo único para ese objeto.
• El valor de manejo se usa para accesar dicha ventana.
• El valor de manejo de la ventana permanece durante toda la existencia de esa
ventana.
• El "manejo de ventana" es un valor de palabra (rango: 0 a 64K-1)
• Los nombres de formatos pueden ser usados como parámetros de funciones que
requieren un parámetro del tipo "manejo de ventana"
44..77..22.. Ddee VVaarriiaabblleess MMaanneejjoo ddee VVeennttaannaa
hhWWnnddNNUULLLL Onu nulo (cero) de manejo de ventana; usando para
pasar, o revisar el párrafo, ONU número de manejo de ventana nula.
HHWWnnddFFoorrmm el "manejo de ventana" padre
hhWWnnddIItteemm activa el elemento que tiene el foco, o que está recibiendo el
mensaje en ese momento
hhWWnnddMMDDII el "manejo de ventana" para el MDI padre activo
Ejemplo: prototipo de función: bOk = SalDisableWindow (Window_Handle)
SQLWindows 82
Campo de datos:
Acciones de mensaje ddffFFiieelldd
sobre SAM_create
( ddffFFiieelldd SalDisableWindow llamada ) !impida entrada en campo llamada
hhWWnnddIItteemm SalDisableWindow( ) !equivalenta
EEjjeerrcciicciioo recomendado:
Cree una ventana "Acerca de...", prográmela y pruébela, como se
muestra en la siguiente imagen:
Agregue el siguiente código para la llamada de la ventana:
SQLWindows 83
Cuando el botón de OOkk CClliicckk recibe de la ONU, debe cerrar la ventana "Acerca
de..."
• En el TTooooll BBooxx oprima el botón que dice Desde el
CCuussttoommiizzeerr DDiiaalloogg o haga doble clic en la opción de DDiiaalloogg
BBooxx.
• Ahora haga clic derecho sobre el nuevo DDiiaalloogg BBooxx y el de la propiedad
de TTyyppee ooff DDiiaallooggelija MMooddaall (si es que no está elejida).
• Ahorra configurar a su gusto esta ventana, pongale nombre de Naciones Unidas
(ONU), digAbout título,etc.
• Agregele algun BBaacckkggrroouunndd TTeexxtt como "Sistema para el Control de
Producción".
• Ahora agregue un botón (pbOk) para cerrar esta ventana que diga
OK, y agreguele el siguiente código en la sección de acciones de mensajes de dicho
botón lo siguiente:
__CClliicckk OOnn SSAAMM SSaallEEnnddDDiiaalloogg(())
SQLWindows 84
11. Para concluir la ope ración de anu ve ntana modal no se ut iliza la función
______________.
12. Las ventanas se crean modales o no modales con sólo cambiar la función que las
crea.
Cierto Falso
13. Cuando una ventana modal no es sólo se puede crear una ventana a la vez.
Cierto Falso
44.. DDEE LLAA CCAARRAACCTTEERRIISSTTIICCAASS PPRROOGGRRAAMMAACCIIÓÓNN EENN
SSQQLLWWIINNDDOOWWSS.......5533
44..11..
VVaarriiaabblleess.................................................................
...................................................................................
...................................................................................
.....................................................................5533
4.1.1. Variables de
SQLWindows.........................................................................
.......................................54 4.1.2. Calificación de
Variables..........................................................................
.........................................54
44..22..
AArrrreeggllooss...................................................................
...................................................................................
...................................................................................
.......................................................................5566
4.2.1. Arreglos
Unidimensionales...................................................................
.............................................56 4.2.2. Arreglos
multidimensionales.................................................................
..........................................57
44..33..
CCoonnssttaanntteess...............................................................
...................................................................................
...................................................................................
...................................................................6600
4.3.1. Constantes
Predefinidas.......................................................................
..............................................62
44..44.. LLeenngguuaajjee
SSAALL.............................................................................
...................................................................................
...................................................................................
.........................................6633
4.4.1. Instrucciones del Lenguaje
SAL................................................................................
........................63 4.4.2. Funciones del lenguaje
SAL................................................................................
.............................70
44..55.. 7755 CCóóddiiggoo
RReeuussaabbllee...................................................................
...................................................................................
...................................................................................
.......................................
44..66.. Ddee AAssoocciiaacciióónn
MMeennúúss.........................................................................
...................................................................................
..............................................................AAcccciioonneess aa
7788
44..77.. Ddee CCrreeaacciióónn
VVeennttaannaass...................................................................
...................................................................................
...................................................................................
.......................8800
4.7.1. Manejo de
ventanas...........................................................................
...............................................82 4.7.2. Variables de Manejo de
Ventana............................................................................
...........................82
SQLWindows 86