VisualAge RPG Parts Reference - IBM
VisualAge RPG Parts Reference - IBM
VisualAge RPG Parts Reference - IBM
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
AS/400e <br />
<strong>VisualAge</strong> ® <strong>RPG</strong><br />
Manual de consulta de componentes<br />
Versión4.5.1paraWindows ®<br />
<br />
SC10-3065-04
AS/400e <br />
<strong>VisualAge</strong> ® <strong>RPG</strong><br />
Manual de consulta de componentes<br />
Versión4.5.1paraWindows ®<br />
<br />
SC10-3065-04
Importante<br />
Antes de utilizar esta información y el producto al que da soporte, asegúrese de leer la información general que figura en el<br />
apartado “Avisos” en la página 507.<br />
Quinta edición (Abril 2000)<br />
Esta edición se aplica a la Versión 4, Release 5, Nivel de modificación 1, de <strong>IBM</strong> WebSphere Development Tools<br />
para AS/400 (Programa 5769-CL3) y a todos los releases y modificaciones posteriores hasta que se indique lo<br />
contrario en nuevas ediciones.<br />
Esta edición sustituye a la publicación SC10-3065-03.<br />
Los cambios y adiciones realizados en el texto y en las ilustraciones vienen indicados por una línea vertical a la<br />
izquierda del cambio o adición.<br />
Puede efectuar pedidos de publicaciones a su representante de <strong>IBM</strong> o en la sucursal de <strong>IBM</strong> de su localidad. En la<br />
dirección que figura más abajo no hay existencias de publicaciones.<br />
<strong>IBM</strong> agradece sus comentarios. Puede enviar los comentarios a:<br />
<strong>IBM</strong>, S.A.<br />
National Language Solutions Center<br />
Avda. Diagonal, 571<br />
08029 Barcelona<br />
España<br />
También puede enviar sus comentarios a <strong>IBM</strong> electrónicamente o por fax (a la atención del coordinador RCF).<br />
Consulte el apartado “Cómo enviar comentarios” en la página xi para ver una descripción de los métodos.<br />
Cuando envía información a <strong>IBM</strong>, otorga a <strong>IBM</strong> un derecho no exclusivo de utilizar o distribuir dicha información<br />
del modo que crea oportuno sin incurrir en ninguna obligación hacia usted.<br />
© Copyright International Business Machines Corporation 1994, 2000. Reservados todos los derechos.
Contenido<br />
Acerca de este manual . . . . . . . . ix<br />
Convenios de resaltado que se utilizan en este<br />
manual . . . . . . . . . . . . . . . . ix<br />
Requisito previo e información relacionada . . . . ix<br />
La biblioteca <strong>VisualAge</strong> <strong>RPG</strong>. . . . . . . . . ix<br />
Cómo enviar comentarios . . . . . . . . . . xi<br />
Acceso a la información en línea . . . . . . . xi<br />
Utilización de manuales en línea . . . . . . xi<br />
Publicaciones en formato PDF . . . . . . . xi<br />
Utilización de ayuda en línea . . . . . . . xii<br />
Novedades de este Release. . . . . . xv<br />
Capítulo 1. Componentes . . . . . . . 1<br />
ActiveX . . . . . . . . . . . . . . . . 1<br />
Control de animación . . . . . . . . . . . 3<br />
Calendario . . . . . . . . . . . . . . . 4<br />
Lienzo . . . . . . . . . . . . . . . . 5<br />
Recuadro de selección . . . . . . . . . . . 7<br />
Recuadro de combinación . . . . . . . . . . 8<br />
*Component . . . . . . . . . . . . . . 10<br />
Referencia a componente lógico. . . . . . . . 11<br />
Contenedor . . . . . . . . . . . . . . 12<br />
Cliente DDE . . . . . . . . . . . . . . 13<br />
Campo de entrada . . . . . . . . . . . . 14<br />
Gráfica . . . . . . . . . . . . . . . . 16<br />
Pulsador gráfico . . . . . . . . . . . . . 17<br />
Recuadro de grupo . . . . . . . . . . . . 19<br />
Barra de desplazamiento horizontal . . . . . . 20<br />
Imagen . . . . . . . . . . . . . . . . 21<br />
Bean Java . . . . . . . . . . . . . . . 23<br />
Recuadro de lista . . . . . . . . . . . . 24<br />
Medios . . . . . . . . . . . . . . . . 25<br />
Panel de medios . . . . . . . . . . . . . 26<br />
Barra de menús . . . . . . . . . . . . . 27<br />
Elemento de menú . . . . . . . . . . . . 28<br />
Subarchivo de mensajes . . . . . . . . . . 29<br />
Edición de múltiples líneas . . . . . . . . . 30<br />
Cuaderno . . . . . . . . . . . . . . . 31<br />
Página de cuaderno . . . . . . . . . . . 32<br />
Página de cuaderno con lienzo . . . . . . . . 33<br />
Interfaz ODBC/JDBC . . . . . . . . . . . 34<br />
Recuadro de contorno . . . . . . . . . . . 36<br />
Menú emergente. . . . . . . . . . . . . 37<br />
Barra de progreso . . . . . . . . . . . . 38<br />
Pulsador . . . . . . . . . . . . . . . 39<br />
Botón de selección . . . . . . . . . . . . 40<br />
Graduador . . . . . . . . . . . . . . 41<br />
Selector cíclico . . . . . . . . . . . . . 42<br />
Texto estático . . . . . . . . . . . . . . 43<br />
Barra de estado . . . . . . . . . . . . . 44<br />
Subarchivo . . . . . . . . . . . . . . 45<br />
Submenú . . . . . . . . . . . . . . . 46<br />
Temporizador . . . . . . . . . . . . . 47<br />
Barra de desplazamiento vertical . . . . . . . 48<br />
|<br />
Ventana. . . . . . . . . . . . . . . . 49<br />
Ventana con lienzo . . . . . . . . . . . . 50<br />
Capítulo 2. Atributos de componente 51<br />
Activate . . . . . . . . . . . . . . . 52<br />
Active . . . . . . . . . . . . . . . . 53<br />
AddEvent . . . . . . . . . . . . . . . 54<br />
AddItemEnd . . . . . . . . . . . . . . 55<br />
AddLineEnd . . . . . . . . . . . . . . 56<br />
AddLink . . . . . . . . . . . . . . . 57<br />
AddMsgID . . . . . . . . . . . . . . 59<br />
AddMsgText . . . . . . . . . . . . . . 60<br />
AddOffset . . . . . . . . . . . . . . . 61<br />
AddRcd . . . . . . . . . . . . . . . 62<br />
AddSrcEvt. . . . . . . . . . . . . . . 64<br />
Alarm . . . . . . . . . . . . . . . . 65<br />
Alignment . . . . . . . . . . . . . . . 66<br />
AllowChg . . . . . . . . . . . . . . . 68<br />
AllowEdit . . . . . . . . . . . . . . . 69<br />
AllowLink . . . . . . . . . . . . . . . 70<br />
AppData . . . . . . . . . . . . . . . 72<br />
AppName. . . . . . . . . . . . . . . 73<br />
Arrange . . . . . . . . . . . . . . . 74<br />
AttrValue . . . . . . . . . . . . . . . 75<br />
AudioMode . . . . . . . . . . . . . . 76<br />
AutoInc . . . . . . . . . . . . . . . 77<br />
AutoScroll . . . . . . . . . . . . . . . 78<br />
AutoSelect. . . . . . . . . . . . . . . 80<br />
BackColor . . . . . . . . . . . . . . . 81<br />
BackMix . . . . . . . . . . . . . . . 83<br />
BarLabel . . . . . . . . . . . . . . . 84<br />
Bass . . . . . . . . . . . . . . . . . 85<br />
BindPart . . . . . . . . . . . . . . . 86<br />
BlankChar . . . . . . . . . . . . . . . 87<br />
Border . . . . . . . . . . . . . . . . 88<br />
Bottom . . . . . . . . . . . . . . . . 89<br />
BufferDec . . . . . . . . . . . . . . . 90<br />
BufferLen . . . . . . . . . . . . . . . 91<br />
BufferPtr . . . . . . . . . . . . . . . 92<br />
BufferType. . . . . . . . . . . . . . . 93<br />
Button . . . . . . . . . . . . . . . . 95<br />
ButtonIdx . . . . . . . . . . . . . . . 96<br />
Buttons . . . . . . . . . . . . . . . . 97<br />
ButtonTip . . . . . . . . . . . . . . . 98<br />
CanUndo . . . . . . . . . . . . . . . 99<br />
CapsLock. . . . . . . . . . . . . . . 100<br />
Case . . . . . . . . . . . . . . . . 101<br />
CellBGClr . . . . . . . . . . . . . . 102<br />
CellBGMix . . . . . . . . . . . . . . 104<br />
CellFGClr . . . . . . . . . . . . . . 105<br />
CellFGMix . . . . . . . . . . . . . . 107<br />
Center. . . . . . . . . . . . . . . . 108<br />
CharData . . . . . . . . . . . . . . . 109<br />
CharOffset . . . . . . . . . . . . . . 110<br />
Checked . . . . . . . . . . . . . . . 111<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 iii
ChildCount . . . . . . . . . . . . . . 112<br />
ChildList . . . . . . . . . . . . . . . 113<br />
ClearAll . . . . . . . . . . . . . . . 114<br />
ClearDate. . . . . . . . . . . . . . . 115<br />
ClearMonth . . . . . . . . . . . . . . 116<br />
ClearYear . . . . . . . . . . . . . . . 117<br />
ClipBoard . . . . . . . . . . . . . . 118<br />
ColBGClr. . . . . . . . . . . . . . . 119<br />
ColBGMix . . . . . . . . . . . . . . 121<br />
ColFGClr. . . . . . . . . . . . . . . 122<br />
ColFGMix . . . . . . . . . . . . . . 124<br />
Collapsed . . . . . . . . . . . . . . 125<br />
ColNumber . . . . . . . . . . . . . . 126<br />
Color . . . . . . . . . . . . . . . . 127<br />
ColorArea . . . . . . . . . . . . . . 129<br />
ColorMix . . . . . . . . . . . . . . . 131<br />
Column . . . . . . . . . . . . . . . 132<br />
ColumnDec . . . . . . . . . . . . . . 133<br />
ColumnLen . . . . . . . . . . . . . . 134<br />
ColumnName . . . . . . . . . . . . . 135<br />
Columns . . . . . . . . . . . . . . . 136<br />
ColumnType . . . . . . . . . . . . . 137<br />
ColWidth. . . . . . . . . . . . . . . 138<br />
CompName . . . . . . . . . . . . . . 139<br />
Connect . . . . . . . . . . . . . . . 140<br />
Connected . . . . . . . . . . . . . . 141<br />
ConnectStr . . . . . . . . . . . . . . 142<br />
Copy . . . . . . . . . . . . . . . . 143<br />
Count . . . . . . . . . . . . . . . . 144<br />
CsrAtEnd . . . . . . . . . . . . . . 145<br />
CsrLine . . . . . . . . . . . . . . . 146<br />
CsrPos . . . . . . . . . . . . . . . 147<br />
CurrentDir . . . . . . . . . . . . . . 148<br />
CurrentRow . . . . . . . . . . . . . . 149<br />
Cut. . . . . . . . . . . . . . . . . 150<br />
DataGroup . . . . . . . . . . . . . . 151<br />
DataPoint . . . . . . . . . . . . . . 152<br />
DataType . . . . . . . . . . . . . . . 153<br />
DataValue . . . . . . . . . . . . . . 154<br />
Date . . . . . . . . . . . . . . . . 155<br />
DateIdx . . . . . . . . . . . . . . . 156<br />
DateText . . . . . . . . . . . . . . . 157<br />
DateUnder . . . . . . . . . . . . . . 158<br />
Day . . . . . . . . . . . . . . . . 159<br />
DayIdx . . . . . . . . . . . . . . . 160<br />
DayLen . . . . . . . . . . . . . . . 161<br />
DayNumPos. . . . . . . . . . . . . . 162<br />
DayNumRect . . . . . . . . . . . . . 163<br />
DayStart . . . . . . . . . . . . . . . 164<br />
DDEAddLink . . . . . . . . . . . . . 165<br />
DDEMode . . . . . . . . . . . . . . 167<br />
DDERmvLink . . . . . . . . . . . . . 168<br />
DeActivate . . . . . . . . . . . . . . 169<br />
Delete . . . . . . . . . . . . . . . . 170<br />
DeleteRow . . . . . . . . . . . . . . 171<br />
DelimChar . . . . . . . . . . . . . . 172<br />
DeSelect . . . . . . . . . . . . . . . 173<br />
Dialog . . . . . . . . . . . . . . . . 174<br />
DIRName . . . . . . . . . . . . . . 175<br />
DlgOwner . . . . . . . . . . . . . . 176<br />
DoEvents. . . . . . . . . . . . . . . 177<br />
iv <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
|<br />
DragEnable . . . . . . . . . . . . . . 178<br />
DropEnable . . . . . . . . . . . . . . 179<br />
DspHeight . . . . . . . . . . . . . . 180<br />
DspWidth . . . . . . . . . . . . . . 181<br />
EditItem . . . . . . . . . . . . . . . 182<br />
EnableBtn . . . . . . . . . . . . . . 183<br />
Enabled . . . . . . . . . . . . . . . 184<br />
Execute . . . . . . . . . . . . . . . 186<br />
ExecuteSQL . . . . . . . . . . . . . . 187<br />
ExtSelect . . . . . . . . . . . . . . . 188<br />
Fetch . . . . . . . . . . . . . . . . 189<br />
FetchNext . . . . . . . . . . . . . . 190<br />
FetchPrior . . . . . . . . . . . . . . 191<br />
FieldExit . . . . . . . . . . . . . . . 192<br />
FileName. . . . . . . . . . . . . . . 193<br />
FillStyle . . . . . . . . . . . . . . . 195<br />
FirstSel . . . . . . . . . . . . . . . 197<br />
Focus . . . . . . . . . . . . . . . . 198<br />
FontArea . . . . . . . . . . . . . . . 200<br />
FontBold . . . . . . . . . . . . . . . 202<br />
FontItalic . . . . . . . . . . . . . . . 204<br />
FontName . . . . . . . . . . . . . . 206<br />
FontSize . . . . . . . . . . . . . . . 207<br />
FontStrike . . . . . . . . . . . . . . 208<br />
FontUnder . . . . . . . . . . . . . . 210<br />
ForeColor . . . . . . . . . . . . . . 212<br />
ForeMix . . . . . . . . . . . . . . . 214<br />
Format . . . . . . . . . . . . . . . 216<br />
FrameRate . . . . . . . . . . . . . . 217<br />
FrmtString . . . . . . . . . . . . . . 218<br />
GetItem . . . . . . . . . . . . . . . 219<br />
GetNewID . . . . . . . . . . . . . . 220<br />
GetRcdFld . . . . . . . . . . . . . . 221<br />
GetRcdIcon . . . . . . . . . . . . . . 222<br />
GetRcdText . . . . . . . . . . . . . . 223<br />
GetTables. . . . . . . . . . . . . . . 224<br />
Ejemplo de GetTables. . . . . . . . . . 225<br />
GnEqGrpCol . . . . . . . . . . . . . 226<br />
GnEqPntCol . . . . . . . . . . . . . . 227<br />
GraphType . . . . . . . . . . . . . . 228<br />
GrphHiLite . . . . . . . . . . . . . . 229<br />
GroupLabel . . . . . . . . . . . . . . 230<br />
Handle . . . . . . . . . . . . . . . 231<br />
HasPrpPage . . . . . . . . . . . . . . 232<br />
HdgBGClr . . . . . . . . . . . . . . 233<br />
HdgBGMix . . . . . . . . . . . . . . 235<br />
HdgFGClr . . . . . . . . . . . . . . 236<br />
HdgFGMix . . . . . . . . . . . . . . 238<br />
HdgIdx . . . . . . . . . . . . . . . 239<br />
HdgText . . . . . . . . . . . . . . . 240<br />
Height. . . . . . . . . . . . . . . . 241<br />
HelpEnable . . . . . . . . . . . . . . 242<br />
HelpWindow . . . . . . . . . . . . . 244<br />
Hidden . . . . . . . . . . . . . . . 245<br />
HighLight . . . . . . . . . . . . . . 246<br />
HitItem . . . . . . . . . . . . . . . 248<br />
HlitPoints . . . . . . . . . . . . . . 250<br />
HRule . . . . . . . . . . . . . . . . 251<br />
IconHandle . . . . . . . . . . . . . . 252<br />
Index . . . . . . . . . . . . . . . . 253<br />
InPlace . . . . . . . . . . . . . . . 254
InsertItem . . . . . . . . . . . . . . 255<br />
InsertLine . . . . . . . . . . . . . . 256<br />
InsertMode . . . . . . . . . . . . . . 257<br />
InsertRow . . . . . . . . . . . . . . 258<br />
InsertText. . . . . . . . . . . . . . . 259<br />
Interval . . . . . . . . . . . . . . . 260<br />
InUse . . . . . . . . . . . . . . . . 261<br />
InvName . . . . . . . . . . . . . . . 262<br />
InvPName . . . . . . . . . . . . . . 263<br />
IsData. . . . . . . . . . . . . . . . 264<br />
Item . . . . . . . . . . . . . . . . 265<br />
ItemCount . . . . . . . . . . . . . . 267<br />
ItemKey . . . . . . . . . . . . . . . 268<br />
Label . . . . . . . . . . . . . . . . 269<br />
LabelPlace . . . . . . . . . . . . . . 271<br />
Left. . . . . . . . . . . . . . . . . 272<br />
LegendType . . . . . . . . . . . . . . 273<br />
Length . . . . . . . . . . . . . . . 274<br />
LineNumber. . . . . . . . . . . . . . 275<br />
LineText . . . . . . . . . . . . . . . 276<br />
LookNFeel . . . . . . . . . . . . . . 277<br />
Magnify . . . . . . . . . . . . . . . 278<br />
Masked . . . . . . . . . . . . . . . 279<br />
Maximum . . . . . . . . . . . . . . 280<br />
Method . . . . . . . . . . . . . . . 281<br />
Ejemplo de Method . . . . . . . . . . 281<br />
MiniIcon . . . . . . . . . . . . . . . 282<br />
Minimum . . . . . . . . . . . . . . 283<br />
Mode . . . . . . . . . . . . . . . . 284<br />
Month. . . . . . . . . . . . . . . . 285<br />
MonthArrow . . . . . . . . . . . . . 286<br />
MonthIdx . . . . . . . . . . . . . . 287<br />
MonthLen . . . . . . . . . . . . . . 288<br />
MouseIcon . . . . . . . . . . . . . . 289<br />
MouseShape. . . . . . . . . . . . . . 290<br />
MsgData . . . . . . . . . . . . . . . 292<br />
MsgFile . . . . . . . . . . . . . . . 293<br />
MsgID. . . . . . . . . . . . . . . . 294<br />
MsgSubText . . . . . . . . . . . . . . 295<br />
MsgText . . . . . . . . . . . . . . . 296<br />
Multiplier . . . . . . . . . . . . . . 297<br />
MultSelect . . . . . . . . . . . . . . 298<br />
Name . . . . . . . . . . . . . . . . 299<br />
NbrOfImage. . . . . . . . . . . . . . 300<br />
NbrOfLines . . . . . . . . . . . . . . 301<br />
NbrOfSel . . . . . . . . . . . . . . . 302<br />
NextLine . . . . . . . . . . . . . . . 303<br />
NextPage . . . . . . . . . . . . . . . 304<br />
NotSrcEvt . . . . . . . . . . . . . . 305<br />
NotSrcPart . . . . . . . . . . . . . . 306<br />
NotSrcWin . . . . . . . . . . . . . . 307<br />
OCXProp. . . . . . . . . . . . . . . 308<br />
OCXValue . . . . . . . . . . . . . . 309<br />
OpenEdit . . . . . . . . . . . . . . . 310<br />
OS . . . . . . . . . . . . . . . . . 311<br />
OutlineRcl . . . . . . . . . . . . . . 312<br />
PageNumber . . . . . . . . . . . . . 313<br />
PageSize . . . . . . . . . . . . . . . 314<br />
Panel . . . . . . . . . . . . . . . . 315<br />
PanelItem . . . . . . . . . . . . . . 317<br />
PanelMode . . . . . . . . . . . . . . 319<br />
|<br />
|<br />
Parent. . . . . . . . . . . . . . . . 320<br />
ParentId . . . . . . . . . . . . . . . 322<br />
ParentList . . . . . . . . . . . . . . 323<br />
ParentName . . . . . . . . . . . . . . 324<br />
PartCount . . . . . . . . . . . . . . 325<br />
PartList . . . . . . . . . . . . . . . 326<br />
PartName . . . . . . . . . . . . . . 327<br />
PartType . . . . . . . . . . . . . . . 328<br />
Paste . . . . . . . . . . . . . . . . 329<br />
PBRange . . . . . . . . . . . . . . . 330<br />
PBSetPos . . . . . . . . . . . . . . . 331<br />
PBStep . . . . . . . . . . . . . . . 332<br />
PBStepSize . . . . . . . . . . . . . . 333<br />
Platform . . . . . . . . . . . . . . . 334<br />
PlugCmd . . . . . . . . . . . . . . . 335<br />
PlugDLL . . . . . . . . . . . . . . . 336<br />
PlugID . . . . . . . . . . . . . . . 337<br />
PlugRC . . . . . . . . . . . . . . . 338<br />
PlugResult . . . . . . . . . . . . . . 339<br />
Poke . . . . . . . . . . . . . . . . 340<br />
Position . . . . . . . . . . . . . . . 341<br />
PrevLine . . . . . . . . . . . . . . . 342<br />
PrevPage . . . . . . . . . . . . . . . 343<br />
Print . . . . . . . . . . . . . . . . 344<br />
Printer. . . . . . . . . . . . . . . . 345<br />
ProgresBar . . . . . . . . . . . . . . 346<br />
Range . . . . . . . . . . . . . . . . 347<br />
ReadOnly . . . . . . . . . . . . . . 348<br />
RecordID . . . . . . . . . . . . . . . 350<br />
RefAttr . . . . . . . . . . . . . . . 351<br />
RefParent. . . . . . . . . . . . . . . 352<br />
RefPart . . . . . . . . . . . . . . . 353<br />
Refresh . . . . . . . . . . . . . . . 354<br />
RemoveItem. . . . . . . . . . . . . . 355<br />
RemoveLink. . . . . . . . . . . . . . 356<br />
RemoveMsg . . . . . . . . . . . . . . 357<br />
RemoveRcd . . . . . . . . . . . . . . 358<br />
Request . . . . . . . . . . . . . . . 359<br />
RmvSrcEvt . . . . . . . . . . . . . . 360<br />
RmvEvent . . . . . . . . . . . . . . 361<br />
RowBGClr . . . . . . . . . . . . . . 362<br />
RowBGMix . . . . . . . . . . . . . . 364<br />
RowFGClr . . . . . . . . . . . . . . 365<br />
RowFGMix . . . . . . . . . . . . . . 367<br />
Rows . . . . . . . . . . . . . . . . 368<br />
SBIndex . . . . . . . . . . . . . . . 369<br />
SBLabel . . . . . . . . . . . . . . . 370<br />
SBPanes . . . . . . . . . . . . . . . 371<br />
SBPosition . . . . . . . . . . . . . . 372<br />
SBStyle . . . . . . . . . . . . . . . 373<br />
Scale . . . . . . . . . . . . . . . . 374<br />
Search . . . . . . . . . . . . . . . . 375<br />
SearchType . . . . . . . . . . . . . . 376<br />
Selected . . . . . . . . . . . . . . . 377<br />
SelectIdx . . . . . . . . . . . . . . . 378<br />
SelectItem . . . . . . . . . . . . . . 379<br />
SelectList . . . . . . . . . . . . . . . 380<br />
Ejemplo de SelectList . . . . . . . . . . 380<br />
SelectRcd . . . . . . . . . . . . . . . 381<br />
SelPrinter. . . . . . . . . . . . . . . 382<br />
Sequence . . . . . . . . . . . . . . . 383<br />
Contenido v
SetItem . . . . . . . . . . . . . . . 385<br />
SetRcdFld . . . . . . . . . . . . . . 386<br />
SetRcdIcon . . . . . . . . . . . . . . 387<br />
SetRcdText . . . . . . . . . . . . . . 388<br />
SetTop. . . . . . . . . . . . . . . . 389<br />
SflNxtChg . . . . . . . . . . . . . . 390<br />
ShData . . . . . . . . . . . . . . . 391<br />
ShDataLen . . . . . . . . . . . . . . 392<br />
ShDataName . . . . . . . . . . . . . 393<br />
ShDataPos . . . . . . . . . . . . . . 394<br />
ShowMsgID . . . . . . . . . . . . . . 395<br />
ShowProp . . . . . . . . . . . . . . 396<br />
ShowRects . . . . . . . . . . . . . . 397<br />
ShowTabs . . . . . . . . . . . . . . 398<br />
ShowText. . . . . . . . . . . . . . . 399<br />
ShowTips. . . . . . . . . . . . . . . 400<br />
SizeToFit . . . . . . . . . . . . . . . 401<br />
SortAsc . . . . . . . . . . . . . . . 402<br />
SortDesc . . . . . . . . . . . . . . . 403<br />
SQLError . . . . . . . . . . . . . . . 404<br />
SQLMsgBox . . . . . . . . . . . . . . 405<br />
SQLQuery . . . . . . . . . . . . . . 406<br />
StartAt . . . . . . . . . . . . . . . 407<br />
Ejemplo de StartAt . . . . . . . . . . 408<br />
StartNew . . . . . . . . . . . . . . . 409<br />
StatusBar . . . . . . . . . . . . . . . 410<br />
SwitchTo . . . . . . . . . . . . . . . 411<br />
TabImage. . . . . . . . . . . . . . . 412<br />
TabLabel . . . . . . . . . . . . . . . 413<br />
Text . . . . . . . . . . . . . . . . 414<br />
TextEnd . . . . . . . . . . . . . . . 415<br />
TextLength . . . . . . . . . . . . . . 416<br />
TextSelect. . . . . . . . . . . . . . . 417<br />
TextStart . . . . . . . . . . . . . . . 418<br />
TextString . . . . . . . . . . . . . . 419<br />
TickLabel . . . . . . . . . . . . . . . 420<br />
TickNumber . . . . . . . . . . . . . . 421<br />
Tile. . . . . . . . . . . . . . . . . 422<br />
TimeOut . . . . . . . . . . . . . . . 423<br />
TimerMode . . . . . . . . . . . . . . 424<br />
TimerTicks . . . . . . . . . . . . . . 425<br />
TipText . . . . . . . . . . . . . . . 426<br />
Title . . . . . . . . . . . . . . . . 427<br />
TitlePlace . . . . . . . . . . . . . . . 428<br />
Top. . . . . . . . . . . . . . . . . 429<br />
Topic . . . . . . . . . . . . . . . . 430<br />
TopLine . . . . . . . . . . . . . . . 431<br />
TopRecord . . . . . . . . . . . . . . 432<br />
Treble . . . . . . . . . . . . . . . . 433<br />
UnBind . . . . . . . . . . . . . . . 434<br />
UnderPoint . . . . . . . . . . . . . . 435<br />
Undo . . . . . . . . . . . . . . . . 436<br />
UpdateRow . . . . . . . . . . . . . . 437<br />
UseData . . . . . . . . . . . . . . . 438<br />
UseDelim. . . . . . . . . . . . . . . 439<br />
UserData . . . . . . . . . . . . . . . 440<br />
Validate . . . . . . . . . . . . . . . 441<br />
Value . . . . . . . . . . . . . . . . 443<br />
View . . . . . . . . . . . . . . . . 444<br />
Visible. . . . . . . . . . . . . . . . 445<br />
VisTitle . . . . . . . . . . . . . . . 447<br />
vi <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
|<br />
VisTitlSep . . . . . . . . . . . . . . 448<br />
Volume . . . . . . . . . . . . . . . 449<br />
VRule . . . . . . . . . . . . . . . . 450<br />
WeekDay . . . . . . . . . . . . . . . 451<br />
WeekDayIdx. . . . . . . . . . . . . . 452<br />
Width . . . . . . . . . . . . . . . . 453<br />
WindowMode . . . . . . . . . . . . . 454<br />
WordWrap . . . . . . . . . . . . . . 455<br />
WrkStnName . . . . . . . . . . . . . 456<br />
X . . . . . . . . . . . . . . . . . 457<br />
XAxisLabel . . . . . . . . . . . . . . 458<br />
Y . . . . . . . . . . . . . . . . . 459<br />
YAxisLabel . . . . . . . . . . . . . . 460<br />
Year . . . . . . . . . . . . . . . . 461<br />
YearIdx . . . . . . . . . . . . . . . 462<br />
YearLen . . . . . . . . . . . . . . . 463<br />
Yinc . . . . . . . . . . . . . . . . 464<br />
Capítulo 3. Eventos de componentes 465<br />
Activate . . . . . . . . . . . . . . . 465<br />
BeanEvent . . . . . . . . . . . . . . 465<br />
Change . . . . . . . . . . . . . . . 466<br />
Click . . . . . . . . . . . . . . . . 466<br />
Close . . . . . . . . . . . . . . . . 467<br />
Collapsed . . . . . . . . . . . . . . 467<br />
ColSelect . . . . . . . . . . . . . . . 467<br />
Complete. . . . . . . . . . . . . . . 467<br />
Create . . . . . . . . . . . . . . . . 468<br />
Data . . . . . . . . . . . . . . . . 468<br />
DblClick . . . . . . . . . . . . . . . 469<br />
DeActivate . . . . . . . . . . . . . . 469<br />
Destroy . . . . . . . . . . . . . . . 469<br />
Drop . . . . . . . . . . . . . . . . 470<br />
DropDown . . . . . . . . . . . . . . 470<br />
Enter . . . . . . . . . . . . . . . . 471<br />
ExecuteAck . . . . . . . . . . . . . . 471<br />
Expanded . . . . . . . . . . . . . . 471<br />
FirstRec . . . . . . . . . . . . . . . 472<br />
GotFocus . . . . . . . . . . . . . . . 472<br />
KeyPress . . . . . . . . . . . . . . . 472<br />
LastRec . . . . . . . . . . . . . . . 473<br />
LClickTray . . . . . . . . . . . . . . 473<br />
Link . . . . . . . . . . . . . . . . 473<br />
LostFocus . . . . . . . . . . . . . . 473<br />
MenuSelect . . . . . . . . . . . . . . 474<br />
MouseDown. . . . . . . . . . . . . . 474<br />
MouseEnter . . . . . . . . . . . . . . 474<br />
MouseExit . . . . . . . . . . . . . . 475<br />
MouseMove . . . . . . . . . . . . . . 475<br />
MouseUp. . . . . . . . . . . . . . . 476<br />
Moved . . . . . . . . . . . . . . . 476<br />
MthChange . . . . . . . . . . . . . . 476<br />
NextRec . . . . . . . . . . . . . . . 476<br />
Notify . . . . . . . . . . . . . . . . 477<br />
OCXEvent . . . . . . . . . . . . . . 477<br />
PageDown . . . . . . . . . . . . . . 477<br />
PageEnd . . . . . . . . . . . . . . . 478<br />
PageSelect . . . . . . . . . . . . . . 478<br />
PageTop . . . . . . . . . . . . . . . 478<br />
PageUp . . . . . . . . . . . . . . . 478<br />
PokeAck . . . . . . . . . . . . . . . 479
Popup . . . . . . . . . . . . . . . . 479<br />
Press . . . . . . . . . . . . . . . . 480<br />
PrevRec . . . . . . . . . . . . . . . 480<br />
RClickTray . . . . . . . . . . . . . . 480<br />
ReSize . . . . . . . . . . . . . . . . 480<br />
Scroll . . . . . . . . . . . . . . . . 481<br />
Select . . . . . . . . . . . . . . . . 481<br />
ShutDown . . . . . . . . . . . . . . 481<br />
SpinDown . . . . . . . . . . . . . . 482<br />
SpinEnd . . . . . . . . . . . . . . . 482<br />
SpinUp . . . . . . . . . . . . . . . 482<br />
Terminate . . . . . . . . . . . . . . 482<br />
Tick . . . . . . . . . . . . . . . . 483<br />
Timeout . . . . . . . . . . . . . . . 483<br />
VKeyPress . . . . . . . . . . . . . . 484<br />
YearChange . . . . . . . . . . . . . . 484<br />
Capítulo 4. Atributos de eventos . . . 485<br />
%Alt . . . . . . . . . . . . . . . . 486<br />
%Button . . . . . . . . . . . . . . . 486<br />
%Character . . . . . . . . . . . . . . 486<br />
%ColNumber . . . . . . . . . . . . . 487<br />
%Complete . . . . . . . . . . . . . . 487<br />
%Control . . . . . . . . . . . . . . . 487<br />
%Data. . . . . . . . . . . . . . . . 488<br />
%EventName . . . . . . . . . . . . . 488<br />
|<br />
%Index . . . . . . . . . . . . . . . 488<br />
%Item . . . . . . . . . . . . . . . . 488<br />
%MouseX . . . . . . . . . . . . . . 488<br />
%MouseY . . . . . . . . . . . . . . 489<br />
%NewHeight . . . . . . . . . . . . . 489<br />
%NewMode. . . . . . . . . . . . . . 489<br />
%NewWidth. . . . . . . . . . . . . . 489<br />
%Page. . . . . . . . . . . . . . . . 490<br />
%Part . . . . . . . . . . . . . . . . 490<br />
%Position . . . . . . . . . . . . . . 490<br />
%RealName . . . . . . . . . . . . . . 490<br />
%Shift . . . . . . . . . . . . . . . . 490<br />
%SrcCompName . . . . . . . . . . . . 491<br />
%SrcEvtName . . . . . . . . . . . . . 491<br />
%SrcPartName . . . . . . . . . . . . . 491<br />
%SrcWinName . . . . . . . . . . . . . 491<br />
%Window . . . . . . . . . . . . . . 492<br />
Glosario . . . . . . . . . . . . . 493<br />
Bibliografía . . . . . . . . . . . . 505<br />
Avisos . . . . . . . . . . . . . . 507<br />
Información de interfaz de programación . . . . 508<br />
Marcas registradas y marcas de servicio . . . . 508<br />
Contenido vii
viii <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Acerca de este manual<br />
Este manual proporciona información de consulta sobre los componentes de<br />
<strong>VisualAge</strong> ® para <strong>RPG</strong>, que se utilizan para crear la aplicación de interfaz gráfica<br />
de usuario (GUI); los atributos y los eventos asociados con cada componente; y<br />
los atributos de evento que puede consultar en la aplicación VA<strong>RPG</strong>. Está<br />
destinado a aquellas personas que programan aplicaciones mediante <strong>VisualAge</strong><br />
<strong>RPG</strong>.<br />
Antes de utilizar este manual, debería leer la publicación Iniciación a <strong>VisualAge</strong> <strong>RPG</strong><br />
y CODE/400.<br />
Convenios de resaltado que se utilizan en este manual<br />
A lo largo de este manual, todos los nombres de atributos, eventos y atributos de<br />
eventos aparecen en el tipo negrita, al igual que un término en su primera<br />
aparición, otros términos enfatizados y cualquier referencia a texto que aparezca en<br />
la interfaz de <strong>VisualAge</strong> <strong>RPG</strong>. Las variables aparecen en cursiva. Los códigos de<br />
operación de <strong>VisualAge</strong> <strong>RPG</strong> aparecen TOTALMENTE EN MAYÚSCULAS.<br />
Requisito previo e información relacionada<br />
La biblioteca <strong>VisualAge</strong> <strong>RPG</strong><br />
Utilice el centro de información de AS/400 ® como punto de partida para consultar<br />
información técnica sobre AS/400. Puede acceder al Information Center desde el<br />
CD-ROM AS/400e Information Center (versión en español: SK3T-1330-02<br />
(SK3T-2027-03)) o desde una de las páginas Web siguientes:<br />
http://www.as400.ibm.com/infocenter<br />
http://publib.boulder.ibm.com/pubs/html/as400/infocenter.htm<br />
El centro de información de AS/400 contiene temas importantes como, por<br />
ejemplo, particiones lógicas, sistemas en clusters, Java, TCP/IP, servicios de Web y<br />
redes seguras. También contiene enlaces de Internet a páginas Web como, por<br />
ejemplo, la biblioteca en línea de AS/400 y el estudio técnico de AS/400. En el<br />
centro de información hay un enlace que describe a un nivel superior las<br />
diferencias de información entre el centro de información y la biblioteca en línea.<br />
Para obtener una versión en copia software de las publicaciones de AS/400,<br />
consulte la publicación CD-ROM AS/400e Biblioteca en soporte software, SK3T-1325-04<br />
(SK3T-0118-04).<br />
*Nota: Se han actualizado todas las versiones en línea de las publicaciones de<br />
WebSphere Development Tools para AS/400. Las publicaciones cuyo título<br />
está marcado con un asterisco (*) no se han vuelto a imprimir en este<br />
release.<br />
La biblioteca <strong>VisualAge</strong> <strong>RPG</strong> contiene las publicaciones siguientes:<br />
*Iniciación a <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 ix
Utilice esta publicación para familiarizarse con los conceptos y la interfaz de<br />
<strong>VisualAge</strong> <strong>RPG</strong> y como consulta de tareas al utilizar <strong>VisualAge</strong> <strong>RPG</strong>.<br />
*Programación con <strong>VisualAge</strong> para <strong>RPG</strong><br />
Esta publicación contiene información específica acerca de la creación de<br />
aplicaciones con <strong>VisualAge</strong> <strong>RPG</strong>. Describe los pasos a seguir en cada fase del ciclo<br />
de desarrollo de aplicaciones, desde el diseño al empaquetado y la distribución. Se<br />
incluyen ejemplos de programación para aclarar los conceptos y el proceso del<br />
desarrollo de aplicaciones <strong>VisualAge</strong> <strong>RPG</strong>.<br />
*<strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
Esta publicación proporciona información sobre los componentes, atributos de<br />
componente, eventos de componente y atributos de evento de <strong>VisualAge</strong> <strong>RPG</strong>. Es<br />
un manual de consulta para todos aquellos que desarrollan aplicaciones con<br />
<strong>VisualAge</strong> <strong>RPG</strong>.<br />
*<strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta del lenguaje<br />
Esta publicación proporciona información acerca del lenguaje <strong>RPG</strong> IV tal como se<br />
implementa utilizando el compilador <strong>VisualAge</strong> <strong>RPG</strong>. Contiene:<br />
v Conceptos básicos del lenguaje como el juego de caracteres, nombres simbólicos<br />
y palabras reservadas, directivas del compilador e indicadores.<br />
v Tipos y formatos de datos<br />
v Manejo de errores y de excepciones<br />
v Especificaciones<br />
v Funciones incorporadas, expresiones y códigos de operación.<br />
Para obtener una lista de publicaciones relacionadas, consulte la bibliografía al<br />
final de esta publicación.<br />
VA <strong>RPG</strong> y CODE/400 Tutorial<br />
Hay una guía de aprendizaje en formato HTML disponible en el URL siguiente:<br />
http://www.ibm.com/software/ad/varpg/download/#interactive<br />
Esta guía de aprendizaje interactiva registra la evolución del usuario para poder<br />
volver fácilmente al último ejercicio realizado. Hay unas pruebas al final de cada<br />
lección que sirven de ayuda para probar los conocimientos adquiridos de la<br />
unidad.<br />
Nota: Para poder utilizar esta guía de aprendizaje, necesitará un navegador que<br />
admita marcos, Java ® y Javascript. También necesitará una herramienta de<br />
extracción de archivos, como es WinZip, que pueda manejar nombres largos<br />
de archivos.<br />
También puede encontrar la información más reciente sobre VA <strong>RPG</strong> y CODE/400<br />
en las siguientes fuentes en línea:<br />
La página de presentación de <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400<br />
http://www.ibm.com/software/ad/varpg/<br />
x <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Cómo enviar comentarios<br />
Sus opiniones son importantes para ayudarnos a proporcionar la información más<br />
exacta y de mayor calidad posible. <strong>IBM</strong> agradece todos los comentarios sobre esta<br />
publicación o cualquier otra documentación de AS/400.<br />
v Si prefiere enviar los comentarios por correo, puede utilizar la dirección<br />
siguiente:<br />
<strong>IBM</strong>, S.A.<br />
National Language Solutions Center<br />
Avda. Diagonal, 571<br />
08029 Barcelona<br />
España<br />
Si envía una hoja de comentarios del cliente desde un país fuera de Estados<br />
Unidos, puede entregar la hoja de comentarios a la sucursal <strong>IBM</strong> local o al<br />
representante de <strong>IBM</strong> para enviarla por correo pagado.<br />
v Si prefiere enviar los comentarios por fax, puede utilizar el número siguiente:<br />
– +34 93 321 61 34<br />
v Si prefiere enviar los comentarios por correo electrónico, puede utilizar una de<br />
las direcciones siguientes:<br />
– Comentarios sobre publicaciones<br />
hojacom@vnet.ibm.com<br />
<strong>IBM</strong>Link: to toribm(torrcf)<br />
– Comentarios sobre el centro de información de AS/400:<br />
RCHINFOC@us.ibm.com<br />
Asegúrese de indicar lo siguiente:<br />
v El título del libro<br />
v El número de la publicación<br />
v El número de página o el tema al que hace referencia el comentario.<br />
Acceso a la información en línea<br />
<strong>VisualAge</strong> <strong>RPG</strong> tiene varios manuales en línea y ayuda en línea. Puede acceder a<br />
la ayuda mientras utiliza el producto, y puede visualizar los manuales tanto si está<br />
utilizando el producto como si no.<br />
Utilización de manuales en línea<br />
Para visualizar un manual en línea,realice una de las acciones siguientes:<br />
v Seleccione el nombre del manual desde el menú desplegable Ayuda del<br />
Diseñador GUI de <strong>VisualAge</strong> <strong>RPG</strong> o de la ventana del editor.<br />
v Puede acceder a las publicaciones desde el menú Inicio. Seleccione Programas →<br />
<strong>VisualAge</strong> <strong>RPG</strong> y CODE400. Después, seleccione Información de VA<strong>RPG</strong> y<br />
CODE400.<br />
Publicaciones en formato PDF<br />
Todas las publicaciones de VA <strong>RPG</strong> y CODE/400 se incluyen como parte de la<br />
ayuda habitual para el producto. Además del formato normal, el producto también<br />
contiene la versión PDF de las publicaciones.<br />
Nota: Debe disponer del programa Adobe Acrobat Reader, Versión 3.01 o superior<br />
para Windows, para ver el formato PDF de las publicaciones en la estación<br />
Acerca de este manual xi
de trabajo. Si no dispone de dicho programa, puede descargar una copia de<br />
la página Web de Adobe Systems (http://www.adobe.com).<br />
En la ayuda en línea están disponibles las siguientes publicaciones en formato<br />
PDF:<br />
v Iniciación a <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400<br />
v Programación con <strong>VisualAge</strong> para <strong>RPG</strong><br />
v <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
v <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta del lenguaje<br />
Nota: Se han actualizado todas las versiones en línea de las publicaciones de<br />
WebSphere Development Tools para AS/400.<br />
Utilización de ayuda en línea<br />
Hay ayuda en línea disponible para todas las áreas de <strong>VisualAge</strong> <strong>RPG</strong>. Para<br />
obtener ayuda para una ventana determinada, un recuadro de diálogo o un<br />
cuaderno de propiedades, seleccione el pulsador Ayuda (si está disponible).<br />
Nota: Para ver la ayuda que está en formato HTML, la estación de trabajo debe<br />
tener un navegador Web que soporte marcos como, por ejemplo Netscape<br />
Navigator 4.04 o superior, o Microsoft ® Internet Explorer 4.01 o superior. (El<br />
navegador recomendado es Netscape Navigator 4.6 o Internet Explorer 5.0)<br />
Utilización de ayuda según el contexto<br />
Para obtener ayuda sensible al contexto en cualquier momento, pulse F1. La ayuda<br />
que aparece es específica del área de la interfaz que tiene foco de entrada. El foco<br />
de entrada puede estar en elementos de menú, ventanas, recuadros de diálogo y<br />
cuadernos de propiedades, o en componentes específicos de los mismos.<br />
Para obtener ayuda según contexto en los recuadros de diálogo, pulse el botón<br />
sobre el signo de interrogación (si está disponible) en el extremo superior derecho<br />
de la ventana. Aparece un signo de interrogación al lado de la flecha del ratón.<br />
Pulse el botón sobre una palabra o un campo y aparecerá la información de ayuda<br />
sobre ese determinado campo.<br />
Utilización de hipertexto<br />
Algunas ventanas de ayuda contienen palabras, frases o gráficos que aparecen<br />
resaltados. Son enlaces de hipertexto que llevan de un tema a otro. Para visualizar<br />
ayuda específica de un tema resaltado, pulse en él. Cuando siga un enlace de<br />
hipertexto, puede aparecer un botón Sincronizar en la esquina superior derecha<br />
del tema de ayuda. (Quizás deba retroceder páginas para verlo). Si pulsa el botón<br />
Sincronizar, la lista de temas del marco izquierdo se renueva a fin de mostrarle el<br />
lugar que ocupa el tema actual en la tabla de contenido general.<br />
Utilización de la tabla de contenido de la ayuda<br />
Cuando se visualice la ventana de Ayuda, pulse el botón Sincronizar (cuando esté<br />
disponible) para visualizar la sección Componentes en el marco de la izquierda.<br />
Pulse los símbolos más + y menos − para expandir y contraer la sección<br />
correspondiente al componente deseado. Para ver un tema, pulse en él.<br />
Utilización del recurso de búsqueda<br />
El sistema de ayuda <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400 utiliza un motor de búsqueda<br />
avanzado de texto completo, que devuelve ″aciertos″ o ″coincidencias″ HTML<br />
basados en la petición de búsqueda. Para buscar un tema:<br />
xii <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
1. Escriba una palabra, frase o pregunta (no incluya los interrogantes) en el área<br />
de texto situada junto a las +Opciones de búsqueda. Pulse Intro.<br />
2. Si la palabra o frase no se encuentra, se visualiza información acerca del intento<br />
de búsqueda. De lo contrario, aparece la página Resultado de la búsqueda con<br />
una lista de temas en los que se ha encontrado la palabra o frase. Pulse el<br />
enlace que desee ver.<br />
3. Puede utilizar las +Opciones de búsqueda para especificar el número de<br />
documentos que debe devolverse.<br />
Si desea obtener consejos para refinar las búsquedas, puede ver el tema Cómo<br />
buscar información en la ayuda en línea.<br />
Utilización de ayuda según el lenguaje<br />
Para obtener ayuda según el lenguaje, pulse F1 en una ventana de edición. Si el<br />
cursor está en un código de operación, recibirá ayuda para ese código de<br />
operación; de lo contrario, recibirá ayuda para la especificación actual.<br />
Acerca de este manual xiii
xiv <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Novedades de este Release<br />
Las siguientes funciones nuevas de <strong>VisualAge</strong> <strong>RPG</strong> se han añadido en este release<br />
de <strong>IBM</strong> <strong>VisualAge</strong> <strong>RPG</strong> y CODE (Cooperative Development Environment) para<br />
AS/400:<br />
v Los campos de subarchivo soportan la palabra clave VALUE.<br />
v Se dispone de un nuevo atributo StartAt en el componente subarchivo. Ahora<br />
puede forzarse que la operación READC empiece en el registro especificado.<br />
v El carácter de sustitución de etiqueta (|) se soporta ahora en las cabeceras de<br />
columna de los subarchivos.<br />
v Puede establecerse un tabulador en el componente subarchivo.<br />
v Se ha añadido la validación y formato automáticos en los campos de entrada.<br />
v Los componentes subarchivo, contenedor y recuadro de lista soportan los<br />
eventos KeyPress y VKeyPress.<br />
v El atributo Tablabel de la página de cuaderno ahora también es de lectura.<br />
v Un nuevo atributo ShowTabs para el componente Cuaderno permite ocultar las<br />
pestañas.<br />
v Un valor nuevo del diálogo Preferencias del usuario determina si deben<br />
mostrarse todas las pestañas en los cuadernos de propiedades.<br />
v Se soportan posibilidades adicionales de espaciado de los componentes, en<br />
relación con una área circundante.<br />
v El componente Lienzo ahora soporta el atributo Enabled.<br />
v El nuevo atributo de componente *component, Platform, devuelve el entorno en<br />
el que se ejecuta la aplicación (Java o Windows).<br />
v La posibilidad de especificar el tamaño y la posición de un componente dentro<br />
de una ventana.<br />
v La posibilidad de invocar mandatos de usuario en el último paso de<br />
construcción.<br />
v La ayuda en línea se visualiza ahora en formato HTML. (Deberá tener instalado<br />
un navegador en la estación de trabajo para ver la ayuda).<br />
v Se da soporte a Personal Communications (PCOMM) para Windows.<br />
v Un nuevo diálogo ’¿Quién soy?’ del Diseñador GUI proporciona información<br />
sobre el proyecto y VA<strong>RPG</strong>.<br />
v Se ha añadido el nuevo componente Bean Java a la paleta de componentes.<br />
Ahora pueden utilizarse componentes JavaBean en la aplicación.<br />
v Las opciones de menú dan soporte a la ayuda ¿Qué es esto? en las aplicaciones<br />
Java.<br />
v Los componentes Campo de entrada y Edición de múltiples líneas proporcionan<br />
un nuevo valor que conserva la selección de texto aunque la ventana en la que<br />
están pierda el foco.<br />
v Se ha añadido un botón Buscar en el diálogo Empaquetar componente.<br />
v Para cada proyecto puede especificarse el directorio TEST.<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 xv
xvi <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Capítulo 1. Componentes<br />
ActiveX<br />
Los componentes son los bloques de construcción que se utilizan al crear una<br />
aplicación GUI (interfaz gráfica de usuario). Actúan como plantillas sobre las que<br />
se construye, permitiendo al usuario crear diseños de forma rápida y sencilla. Cada<br />
componente tiene asociados atributos y eventos.<br />
Este capítulo describe los componentes de <strong>VisualAge</strong> ®<br />
<strong>RPG</strong>. Cada una de las<br />
descripciones contiene lo siguiente:<br />
v Una descripción general del componente<br />
v Una lista de los atributos que se aplican al componente<br />
v Una lista de los eventos que se aplican al componente<br />
v Cualquier restricción que se aplique<br />
* Restricción: Este componente no está soportado en las aplicaciones Java ® .<br />
Utilice el componente ActiveX para añadir objetos de control ActiveX al proyecto.<br />
Las aplicaciones podrán acceder a los atributos y supervisar los eventos. (Otros<br />
proveedores se encargan del desarrollo y suministro de los controles ActiveX.)<br />
Debe estar familiarizado con los controles ActiveX que añade. El Diseñador GUI de<br />
VA<strong>RPG</strong> no puede controlar las funciones que proporcionan estos componentes.<br />
Nota: VA<strong>RPG</strong> sólo trabaja con controles ActiveX que tengan interfaces escritas en<br />
C++. Consulte con su suministrador de controles ActiveX para asegurarse de<br />
que VA<strong>RPG</strong> funcionará con el control ActiveX que desea utilizar.<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 1
Atributos de componente<br />
Activate AddEvent Bottom DeActivate<br />
HasPrpPage Height Left Method<br />
OCXProp OCXValue ParentName PartName<br />
PartType Refresh RmvEvent ShowProp<br />
Top UserData Visible Width<br />
Eventos a los que puede aplicarse<br />
Create Destroy OCXEvent<br />
2 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
Control de animación<br />
En las aplicaciones de Windows ® , el componente control de animación reproduce<br />
los archivos de vídeo con la extensión AVI. Este componente se distingue del<br />
componente medios en que el vídeo se reproduce independientemente de la lógica<br />
del programa. Un uso habitual de este componente es visualizar un archivo AVI<br />
que muestre un progreso como, por ejemplo, un archivo que se traspase de una<br />
carpeta a otra.<br />
El componente control de animación reproduce los archivos de vídeo sin sonido. El<br />
archivo AVI no puede estar en formato comprimido a menos que se haya<br />
comprimido con el método RLE (Running-Length Encoded).<br />
En las aplicaciones Java, el componente control de animación se utiliza para<br />
reproducir una secuencia de archivos GIF utilizando el atributo NbrOfImage.<br />
Atributos de componente<br />
FileName FrameRate Handle* Left<br />
Mode NbrOfImage ParentName PartName<br />
PartType Top UserData Visible<br />
* Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
Capítulo 1. Componentes 3
Calendario<br />
El componente calendario presenta un calendario por meses. Al efectuar una<br />
pulsación sobre una de las flechas de los meses, el usuario puede navegar por el<br />
calendario y desplazarse al mes anterior o posterior.<br />
También tiene un control del programa absoluto sobre el calendario para<br />
desplazarse hasta una fecha específica, determinar qué fecha ha seleccionado el<br />
usuario y añadir breves comentarios de texto a días individuales en el calendario.<br />
Atributos de componente<br />
Border Bottom ClearAll ClearDate<br />
ClearMonth ClearYear Color ColorArea<br />
ColorMix Date DateIdx DateText<br />
DateUnder Day DayIdx DayLen<br />
DayNumPos DayNumRect DayStart Enabled<br />
FontArea FontBold FontItalic FontName<br />
FontSize FontStrike* FontUnder* FrmtString<br />
Handle* Height HRule Left<br />
Month MonthArrow MonthIdx MonthLen<br />
OutlineRcl ParentName PartName PartType<br />
Refresh ShowRects ShowText TipText<br />
Top UserData Visible VRule<br />
WeekDay WeekDayIdx Width Year<br />
YearIdx YearLen<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Click Create Destroy DblClick<br />
MouseDown MouseEnter MouseExit MouseMove<br />
MouseUp MthChange YearChange<br />
4 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Lienzo<br />
Utilice el componente lienzo con una ventana o una página de cuaderno si desea<br />
poner más de un componente en la ventana o en la página de cuaderno. Puede<br />
colocar diversos componentes en el lienzo señalándolos y pulsando el botón del<br />
ratón y cambiarlos de posición para crear una interfaz gráfica de usuario.<br />
El componente lienzo ocupa el área de cliente de una ventana o de una página de<br />
cuaderno. Si en la ventana o en la página de cuaderno no hay lienzo, sólo puede<br />
colocar un componente en el área de cliente, a menos que sean extensiones de la<br />
ventana, como barras de menús y subarchivos de mensajes.<br />
A menudo creará ventanas y páginas de cuaderno que contendrán más de un<br />
componente. En este caso, deberá utilizar los componentes página de cuaderno y<br />
con lienzo y la ventana con lienzo. Así se ahorrará un paso, ya que estos<br />
componentes ya contienen el componente lienzo.<br />
En tiempo de creación de la aplicación, también puede incluir una imagen de<br />
bitmap a modo de fondo del lienzo; para ello, especifique el atributo FileName.<br />
Esta imagen puede ponerse en mosaico estableciendo el atributo Tile. Enlas<br />
aplicaciones Java, puede incluir imágenes GIF o JPG como fondo.<br />
Notas:<br />
1. Los componentes lienzo, ventana (sin lienzo) y página de cuaderno (sin lienzo)<br />
se encuentran en el catálogo de componentes, no en la paleta de componentes.<br />
Si desea utilizarlos con frecuencia, puede añadirlos a la paleta de componentes.<br />
2. Si los componentes situados en un componente lienzo tienen especificado el<br />
valor de font por omisión (Font del sistema por omisión), heredarán la definición<br />
de font especificada en el componente lienzo. Para aplicar un font determinado<br />
a la mayor parte de componentes de un lienzo, especifique ese font en el<br />
componente lienzo en lugar de hacerlo en cada componente individual.<br />
Para obtener información relacionada, consulte el apartado:<br />
v “Ventana” en la página 49<br />
v “Ventana con lienzo” en la página 50<br />
v “Página de cuaderno” en la página 32<br />
v “Página de cuaderno con lienzo” en la página 33.<br />
Capítulo 1. Componentes 5
Atributos de componente<br />
BackColor BackMix Bottom* Enabled<br />
FileName FontBold FontItalic FontName<br />
FontSize FontStrike* FontUnder* Handle*<br />
Height Left ParentName PartName<br />
PartType ReadOnly Refresh Tile<br />
Top* UserData Width<br />
* Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Click Create DblClick Destroy<br />
MouseDown MouseMove MouseUp Popup<br />
6 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Recuadro de selección<br />
Utilice el componente recuadro de selección si desea que el usuario elija entre dos<br />
estados claramente diferenciados; por ejemplo, activado y desactivado.<br />
Una etiqueta asociada con el recuadro de selección describe el valor del mismo<br />
cuando se selecciona.<br />
Normalmente, se utiliza un grupo de recuadros de selección para proporcionar una<br />
lista de opciones. El usuario puede seleccionar uno, varios o ningún recuadro. Las<br />
opciones no son mutuamente excluyentes; por lo tanto, marcar un recuadro de<br />
selección no tiene ningún efecto en otros recuadros de la ventana. Si desea que el<br />
usuario pueda seleccionar sólo una opción de un grupo de dos o más, utilice<br />
botones de selección. Consulte el apartado “Botón de selección” en la página 40 si<br />
desea más información.<br />
Para definir el estado de un recuadro de selección, el usuario puede pulsar el<br />
botón del ratón en el mismo, pulsar la barra espaciadora cuando el recuadro tenga<br />
el foco o pulsar la tecla correspondiente al nemotécnico (si le ha asignado una).<br />
Para obtener información sobre la asignación de teclas nemotécnicas, consulte la<br />
publicación Programación con <strong>VisualAge</strong> para <strong>RPG</strong>, SC10-3067-02 (SC09-2449-02).<br />
Atributos de componente<br />
AddLink* AllowLink* BackColor BackMix<br />
Bottom Checked Enabled Focus<br />
FontBold FontItalic FontName FontSize<br />
FontStrike* FontUnder* ForeColor ForeMix<br />
Handle* Height Highlight* Label<br />
Left ParentName PartName PartType<br />
Refresh RemoveLink* ShowTips TipText<br />
Top UserData Visible Width<br />
* Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy MouseEnter MouseExit<br />
MouseMove Popup Select<br />
Capítulo 1. Componentes 7
Recuadro de combinación<br />
Un recuadro de combinación ofrece al usuario la opción de escribir información<br />
específica o de seleccionarla en una lista de opciones utilizadas con frecuencia.<br />
Se compone de un campo de entrada con un recuadro de lista adjunto que<br />
presenta una lista de valores por la que el usuario puede desplazarse. Si el usuario<br />
selecciona uno de estos valores, aparecerá en el campo de entrada sustituyendo<br />
cualquier texto que hubiese antes. De manera alternativa, el usuario puede escribir<br />
un valor, que no tiene por qué coincidir con ninguno de los que aparecen en la<br />
lista, directamente en el campo de entrada.<br />
Hay disponibles varios estilos de recuadros de combinación. Puede seleccionar el<br />
estilo que desee en el cuaderno de propiedades del componente.<br />
Para obtener información relacionada, consulte los apartados:<br />
v “Recuadro de lista” en la página 24<br />
v “Campo de entrada” en la página 14<br />
Atributos de componente<br />
AddItemEnd AutoScroll* BackColor BackMix<br />
Bottom Case* Count DelimChar<br />
DeSelect* DragEnable* DropEnable* Enabled<br />
FieldExit FirstSel Focus FontBold<br />
FontItalic FontName FontSize FontStrike*<br />
FontUnder* ForeColor ForeMix GetItem<br />
Handle* Height Index InsertItem*<br />
ItemKey Left ParentName PartName<br />
PartType ReadOnly Refresh RemoveItem<br />
Search* SearchType* Selected SelectItem<br />
Sequence* SetItem SetTop* Showtips<br />
SizeToFit* Text TipText Top<br />
UseDelim UserData Visible Width<br />
8 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.
Eventos a los que puede aplicarse<br />
Change Create Destroy Drop*<br />
DropDown* Enter GotFocus KeyPress<br />
LostFocus MouseEnter MouseExit MouseMove<br />
Popup Select VKeyPress<br />
*Nota: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.<br />
Capítulo 1. Componentes 9
*Component<br />
Este componente permite a los programadores acceder y utilizar atributos de<br />
componente lógico y del sistema.<br />
Un componente *component es la ″representación del componente″ del<br />
componente lógico. Para cada componente lógico se crea un componente<br />
*component; no se ve y no está en la paleta.<br />
Atributos de componente<br />
Active* Alarm AppData Button<br />
ClipBoard CurrentDir Dialog DIRName*<br />
DlgOwner DoEvents* DspHeight DspWidth<br />
FileName HelpWindow LookNFeel* MsgData<br />
MsgFile* MsgID MsgText Name<br />
OS Parent PartCount PartList<br />
Platform PlugCmd* PlugDLL* PlugID*<br />
PlugRC* PlugResult* Printer* SelPrinter*<br />
ShData ShDataLen ShDataName ShDataPos<br />
ShowMsgID SwitchTo* WrkStnName*<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Este componente no tiene eventos asociados.<br />
10 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
Referencia a componente lógico<br />
El componente referencia a componente lógico permite que un componente lógico<br />
de VA<strong>RPG</strong> se comunique con otro. Utilice el componente referencia a componente<br />
lógico para afectar a un componente del otro componente lógico. El componente<br />
lógico al que se hace referencia debe estar ejecutándose en la misma aplicación que<br />
el componente referencia a componente lógico.<br />
El componente referencia a componente lógico también supervisa un evento<br />
especificado en el otro componente lógico. Cuando se produzca el evento<br />
supervisado, el componente referencia a componente lógico señalará un evento<br />
Notify.<br />
Atributos de componente<br />
AddSrcEvt AttrValue Bottom CompName<br />
Left NotSrcEvt NotSrcPart NotSrcWin<br />
ParentName PartName PartType RefAttr<br />
RefParent RefPart RmvSrcEvt UserData<br />
Visible<br />
Eventos a los que puede aplicarse<br />
Create Destroy Notify<br />
Capítulo 1. Componentes 11
|<br />
Contenedor<br />
Utilice el componente contenedor para almacenar registros relacionados. Los<br />
registros se pueden mostrar en una vista de iconos, de árbol, de árbol de texto o de<br />
detalles.<br />
Atributos de componente<br />
AddRcd Arrange BackColor BackMix<br />
BlankChar Bottom ChildCount ChildList<br />
Collapsed ColNumber Count DeSelect<br />
EditItem Enabled ExtSelect* FirstSel<br />
Focus FontBold FontItalic FontName<br />
FontSize FontStrike* FontUnder* ForeColor<br />
ForeMix GetNewID GetRcdFld GetRcdIcon<br />
GetRcdText Handle* Height InUse*<br />
Label Left MiniIcon ParentId<br />
ParentList ParentName PartName PartType<br />
ReadOnly RecordID Refresh RemoveRcd<br />
Selected SelectRcd SetRcdFld SetRcdIcon<br />
SetRcdText SetTop* ShowTips SortAsc<br />
SortDesc TipText Top UserData<br />
View* Visible VisTitle VisTitlSep<br />
Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Click Collapsed ColSelect Create<br />
DblClick Destroy Enter Expanded<br />
GotFocus KeyPress LostFocus MouseDown<br />
MouseEnter MouseExit MouseMove MouseUp<br />
Popup Select VKeyPress<br />
12 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Cliente DDE<br />
* Restricción: Este componente no está soportado en las aplicaciones Java.<br />
Utilice el componente cliente DDE para intercambiar datos con otras aplicaciones<br />
(por ejemplo, hojas de cálculo), que den soporte al protocolo de intercambio<br />
dinámico de datos (DDE).<br />
Este intercambio recibe el nombre de conversación DDE. La aplicación que inicia<br />
la conversación es el cliente y la aplicación que responde es el servidor. Para<br />
determinar si una aplicación da soporte a DDE, consulte la documentación que se<br />
ha entregado con ella.<br />
El componente cliente DDE da soporte a las conversaciones de enlace estático y<br />
enlace dinámico. Una conversación de enlace estático consta de un programa<br />
cliente que realiza peticiones explícitas al programa servidor. Una conversación de<br />
enlace dinámico consta de un programa servidor que actualiza automáticamente el<br />
programa cliente cuando se modifican sus datos.<br />
Puede configurar conversaciones de enlace estático o dinámico en el cuaderno de<br />
propiedades del componente cliente DDE y en la lógica del programa.<br />
Atributos de componente<br />
AppName Bottom DDEAddLink DDEMode<br />
DDERmvLink Execute Format Item<br />
Left ParentName PartName PartType<br />
Poke Request TimeOut Top<br />
Topic UserData Visible<br />
Eventos a los que puede aplicarse<br />
Create Data Destroy ExecuteAck<br />
PokeAck Terminate TimeOut<br />
Capítulo 1. Componentes 13
Campo de entrada<br />
Utilice el componente campo de entrada si desea que el usuario pueda especificar<br />
valores que no se pueden predecir. Un campo de entrada es un área en la que el<br />
usuario puede escribir o colocar texto. Sus límites suelen estar indicados. El<br />
usuario puede desplazarse por el texto del campo de entrada si hay más<br />
información disponible de la que resulta visible.<br />
Puede configurar el componente campo de entrada para que acepte datos de tipo<br />
carácter, numéricos o de doble byte (DBCS).<br />
También puede hacer que el campo de entrada sea de sólo lectura, para que el<br />
usuario no pueda modificar la información que contiene directamente.<br />
Puede señalar y pulsar un componente campo de entrada en la paleta de<br />
componentes y después pulsar el botón del ratón en el componente subarchivo<br />
para crear un campo de entrada de subarchivo.<br />
Atributos de componente<br />
AddLink* Alignment AllowLink* AutoScroll*<br />
AutoSelect BackColor BackMix Bottom<br />
CapsLock Copy CsrAtEnd Cut<br />
DataType Delete DragEnable* DropEnable*<br />
Enabled FieldExit Focus FontBold<br />
FontItalic FontName FontSize FontStrike*<br />
FontUnder* ForeColor ForeMix Handle*<br />
Height InsertMode* Left Masked<br />
ParentName PartName PartType Paste<br />
ReadOnly Refresh RemoveLink* ShowTips<br />
Text TextEnd TextLength TextSelect<br />
TextStart TipText Top UserData<br />
Visible Width<br />
14 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.
Eventos a los que puede aplicarse<br />
Change Click Create DblClick<br />
Destroy Drop GotFocus KeyPress<br />
Link* LostFocus MouseDown MouseEnter<br />
MouseExit MouseMove MouseUp Popup<br />
VKeyPress<br />
*Nota: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.<br />
Capítulo 1. Componentes 15
|<br />
Gráfica<br />
El componente gráfica le permite crear y diseñar un gráfico en el proyecto.<br />
Durante la ejecución podrá enviar datos al gráfico y modificar los atributos de<br />
gráfico y el tipo de gráfico. El componente gráfica da soporte a los tipos de gráfica<br />
circular, de líneas, de barras y de líneas y barras.<br />
Los tipos de gráfica de barras y de líneas permiten utilizar el control de texto<br />
ToolTip. Si está habilitado, al mover el ratón sobre un punto de datos se visualiza<br />
el control de texto de ayuda flotante. Para utilizar este soporte en la lógica del<br />
programa, debe establecer el valor del punto en el atributo TipText y activar el<br />
atributo ShowTips para la ventana que contiene el componente gráfica.<br />
Atributos de componente<br />
AutoInc BarLabel Bottom Color<br />
ColorArea ColorMix DataGroup DataPoint<br />
DataValue Enabled FillStyle* FontArea<br />
FontBold FontItalic FontName FontSize<br />
FontStrike* FontUnder* GnEqGrpCol GnEqPntCol<br />
GraphType GroupLabel GrphHiLite Handle*<br />
Height HitItem* HlitPoints* LabelPlace<br />
Left LegendType ParentName PartName<br />
PartType Refresh StartNew TipText<br />
Title TitlePlace Top UnderPoint*<br />
UseData UserData Visible Width<br />
XAxisLabel YAxisLabel YInc<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Click Create Destroy DblClick<br />
MouseDown MouseEnter MouseExit MouseMove<br />
MouseUp<br />
16 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Pulsador gráfico<br />
Utilice pulsadores gráficos para proporcionar un acceso fácil a las acciones<br />
utilizadas con frecuencia.<br />
El pulsador gráfico proporciona la misma función que un pulsador. Indica una<br />
acción que se iniciará cuando el usuario lo seleccione, pero en lugar de visualizar<br />
una etiqueta que describa su función, muestra una imagen. El atributo FileName<br />
especifica el nombre de la imagen que debe utilizarse.<br />
Los formatos válidos de imágenes de Windows son:<br />
v Bitmaps de Windows ® y OS/2 (BMP, VGA, BGA, RLE, DIB, RL4, RL8)<br />
v Icono (ICO)<br />
v TIF, TIFF (Formato de Archivo de Imagen Codificada) de Microsoft/Aldus<br />
v GIF (Formato de Intercambio de Gráficos) de CompuServe<br />
v PCX (Formato de Archivo de Imagen) de ZSoft PC Paintbrush<br />
v TGA, VST, AFI (Bitmap Targa/Vista) de Truevision<br />
v IFF, ILBM (Formato de Bitmap Intercalado) de Amiga<br />
v XBM (Bitmap) de X Windows<br />
v PSE, PSEG, PSEG38PP, PSEG3820 (Segmento de Página de Impresora) de <strong>IBM</strong><br />
Los formatos válidos de imágenes Java son:<br />
v GIF (Formato de Intercambio de Gráficos) de CompuServe<br />
v JPG, JPEG (formato Joint Photographic Experts Group)<br />
Para obtener información relacionada, consulte el apartado “Pulsador” en la<br />
página 39.<br />
Capítulo 1. Componentes 17
Atributos de componente<br />
Bottom Enabled FileName Focus<br />
Handle* Height HelpEnable HighLight<br />
Left ParentName PartName PartType<br />
Refresh ShowTips TipText Top<br />
UserData Validate Visible Width<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy GotFocus LostFocus<br />
MouseEnter MouseExit MouseMove Popup<br />
Press<br />
18 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Recuadro de grupo<br />
Utilice un recuadro de grupo para distinguir visualmente un grupo de<br />
componentes de una ventana.<br />
Un recuadro de grupo es un rectángulo trazado alrededor de un grupo de<br />
componentes para indicar que están relacionados. Por lo general, es recomendable<br />
poner una etiqueta a un recuadro de grupo. Si no se precisa una etiqueta, puede<br />
utilizar un recuadro de contorno.<br />
Atributos de componente<br />
Bottom Enabled FontBold FontItalic<br />
FontName FontSize FontStrike* FontUnder*<br />
ForeColor ForeMix Handle* Height<br />
Label Left ParentName PartName<br />
PartType Refresh Top UserData<br />
Visible Width<br />
Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
Capítulo 1. Componentes 19
Barra de desplazamiento horizontal<br />
Utilice el componente barra de desplazamiento horizontal para poder desplazarse<br />
por un panel de información de izquierda a derecha o viceversa. La información<br />
puede ser una lista de archivos, los registros de una base de datos, las columnas de<br />
un documento, etcétera. Puede utilizar el atributo Range para representar el<br />
número total de los objetos por los que se efectuará el desplazamiento y el atributo<br />
PageSize para determinar el número de objetos que pueden visualizarse en una<br />
página.<br />
Atributos de componente<br />
Bottom Enabled Focus Handle*<br />
Height Left NextLine NextPage<br />
PageSize ParentName PartName PartType<br />
Position PrevLine PrevPage Range<br />
Top UserData Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy Scroll<br />
20 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Imagen<br />
Utilice el componente imagen para visualizar imágenes. El atributo FileName<br />
especifica el nombre de la imagen que debe utilizarse.<br />
Los formatos válidos de imágenes de Windows son:<br />
v Bitmaps de Windows y OS/2 (BMP, VGA, BGA, RLE, DIB, RL4, RL8)<br />
v Icono (ICO)<br />
v TIF, TIFF (Formato de Archivo de Imagen Codificada) de Microsoft/Aldus<br />
v GIF (Formato de Intercambio de Gráficos) de CompuServe<br />
v PCX (Formato de Archivo de Imagen) de ZSoft PC Paintbrush<br />
v TGA, VST, AFI (Bitmap Targa/Vista) de Truevision<br />
v IFF, ILBM (Formato de Bitmap Intercalado) de Amiga<br />
v XBM (Bitmap) de X Windows<br />
v PSE, PSEG, PSEG38PP, PSEG3820 (Segmento de Página de Impresora) de <strong>IBM</strong><br />
Los formatos válidos de imágenes Java son:<br />
v GIF (Formato de Intercambio de Gráficos) de CompuServe<br />
v JPG, JPEG (formato Joint Photographic Experts Group)<br />
Estos archivos residen en la estación de trabajo programable (PWS), no en el<br />
sistema principal. Debe almacenar los archivos de bitmap y de icono específicos<br />
del sistema en el directorio de tiempo de ejecución adecuado (RT_JAVA o<br />
RT_WIN32) para que el programa de utilidad de empaquetado los incluya al crear<br />
el paquete de la aplicación.<br />
Nota: El componente imagen sólo se puede soltar en una página de cuaderno con<br />
lienzo o en una ventana con lienzo.<br />
Capítulo 1. Componentes 21
Atributos de componente<br />
AddLink* AllowLink* BackColor BackMix<br />
Border Bottom Enabled FileName<br />
Handle* Height Left Magnify<br />
Panel ParentName PartName PartType<br />
Print Refresh RemoveLink* ShowTips<br />
TipText Top UserData Visible<br />
Width<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Click Create DblClick Destroy<br />
Link* MouseEnter MouseExit MouseMove<br />
22 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
* Nota:: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.
Bean Java<br />
* Restricción: Este componente no está soportado en las aplicaciones Windows.<br />
Utilice el componente bean Java para añadir beans JavaBeans ® al proyecto. Los<br />
beans Java sirven para llamar de forma directa a métodos Java. Si desea obtener<br />
más información sobre las llamadas a métodos Java, consulte la publicación<br />
Programación con <strong>VisualAge</strong> para <strong>RPG</strong>, SC10-3067-02 (SC09-2449-02).<br />
Para desarrollar aplicaciones que utilicen el componente bean Java, debe tener<br />
instalado Java 2 Software Development Kit (J2SDK), Standard Edition, versión 1.2 o<br />
superior, de JavaSoft, en la estación de trabajo. Si no tiene el J2SDK, puede bajarlo<br />
de Sun Microsystems en el URL siguiente:<br />
http://www.javasoft.com/products/<br />
Tras instalar el J2SDK, establezca la variable de entorno PATH de modo que<br />
apunte a la ubicación tanto del compilador Java como de jvm.dll, que forma parte<br />
del J2SDK y del JRE (Java Runtime Environment). Por ejemplo, si el directorio<br />
inicial de J2SDK es x:\jdk1.2, añada las siguientes sentencias en la variable PATH:<br />
x:\jdk1.2\bin<br />
x:\jdk1.2\jre\bin\classic<br />
Atributos de componente<br />
AddEvent Bottom Enabled Height<br />
Left ParentName PartName PartType<br />
RmvEvent ShowProp Top UserData<br />
Visible Width<br />
Eventos a los que puede aplicarse<br />
Create Destroy BeanEvent<br />
Capítulo 1. Componentes 23
Recuadro de lista<br />
Utilice el componente recuadro de lista para proporcionar al usuario una lista de<br />
elementos de los que se pueden seleccionar uno o más. Un recuadro de lista consta<br />
de elementos de sólo lectura. Un elemento de un recuadro de lista es una serie de<br />
caracteres.<br />
Las barras de desplazamiento verticales y horizontales permiten al usuario ver<br />
partes de la lista que no están visualizadas. Puede configurar el recuadro de lista<br />
de modo que el usuario pueda seleccionar un solo elemento o varios. Puede<br />
utilizar los atributos Search, SearchType, and Case para buscar fácilmente en la<br />
lista un elemento determinado.<br />
Atributos de componente<br />
AddItemEnd AddLink* AllowLink* BackColor<br />
BackMix Bottom Case* Count<br />
DelimChar DeSelect DragEnable* DropEnable*<br />
Enabled ExtSelect* FirstSel Focus<br />
FontBold FontItalic FontName FontSize<br />
FontStrike* FontUnder* ForeColor ForeMix<br />
GetItem Handle* Height Index<br />
InsertItem* ItemKey Left MultSelect<br />
NbrOfSel ParentName PartName PartType<br />
Refresh RemoveItem RemoveLink* Search*<br />
SearchType* Selected SelectItem SelectList<br />
Sequence* SetItem SetTop ShowTips<br />
SizeToFit TipText Top UseDelim<br />
UserData Visible Width<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy Drop* Enter*<br />
GotFocus KeyPress LostFocus MouseEnter<br />
MouseExit MouseMove Popup Select<br />
VKeyPress<br />
24 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
* Nota:: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.
Medios<br />
Utilice el componente medios para reproducir o grabar información de audio o<br />
para reproducir archivos de vídeo.<br />
El componente medios ofrece a los programas la posibilidad de procesar archivos<br />
de ondas (.WAV), MIDI (.MID) y QuickTime Movie (.MOV). Si desea utilizar estos<br />
archivos de audio, el PC debe estar equipado con una tarjeta de sonido que pueda<br />
procesar estos archivos. Para grabar un archivo de sonido, necesitará un micrófono<br />
o algún otro dispositivo de entrada soportado por la tarjeta de sonido. Los<br />
archivos MIDI no pueden grabarse con el componente medios.<br />
Las aplicaciones Java deben tener instalada la API JMF (Java Media Framework).<br />
El componente medios sólo permite reproducir los archivos de audio y de vídeo en<br />
el entorno Java.<br />
Los formatos de archivo de vídeo que se pueden procesar son: MPEG (*.mpg),<br />
QUICKTIME Movie (*.mov), *.dat y *.avi de Microsoft ® Video para Windows en<br />
Windows NT/95/98. Para reproducir estos archivos de vídeo, el sistema debe tener<br />
los controladores adecuados.<br />
Atributos de componente<br />
AddLink* AllowLink* AudioMode Bass*<br />
Bottom FileName Handle* InPlace<br />
Left Length Panel ParentName<br />
PartName PartType Position RemoveLink*<br />
Top Treble* UserData Visible<br />
Volumen<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Complete Create Destroy Link*<br />
*Nota: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.<br />
Capítulo 1. Componentes 25
Panel de medios<br />
Nota: Este componente no se utiliza en las aplicaciones Java.<br />
Utilice el componente panel de medios para proporcionar un acceso rápido a las<br />
acciones más utilizadas.<br />
También puede utilizarlo para dar al usuario control sobre otros componentes sin<br />
necesidad de crear lógica de programa. Por ejemplo, puede utilizarlo para crear<br />
pulsadores o controles de graduador que controlen el volumen o la modalidad de<br />
un componente medios.<br />
En el cuaderno de propiedades del componente panel de medios, puede indicar lo<br />
siguiente:<br />
v Qué botones, de un grupo definido, contendrá el panel de medios<br />
v Si los graduadores de posición y volumen se visualizarán<br />
Nota: El componente panel de medios sólo se puede soltar en una página de<br />
cuaderno con lienzo o en una ventana con lienzo.<br />
Atributos de componente<br />
AddLink AllowLink BackColor BackMix<br />
Bottom Enabled Handle Height<br />
Left PanelItem PanelMode ParentName<br />
PartName PartType Position RemoveLink<br />
Top UserData Visible Volume<br />
Width<br />
Eventos a los que puede aplicarse<br />
Change Create Destroy Link<br />
MouseEnter MouseExit MouseMove Popup<br />
Press<br />
26 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Barra de menús<br />
Utilice el componente barra de menús para proporcionar a los usuarios acceso a<br />
los menús desplegables. Puede añadir componentes submenú y opción de menú a<br />
la barra de menús.<br />
Las barras de menús aparecen en la parte superior del marco de la ventana, debajo<br />
de la barra de título. Cuando el usuario selecciona un menú en ella, aparece un<br />
menú desplegable con todas sus opciones. Al seleccionar una de ellas se inicia<br />
inmediatamente la acción que describe.<br />
Nota: Las propiedades, los eventos, etcétera de este componente sólo se pueden<br />
manipular desde su menú emergente de la vista de árbol de proyectos.<br />
Para obtener información relacionada, consulte el apartado:<br />
v “Elemento de menú” en la página 28<br />
v “Submenú” en la página 46<br />
v “Menú emergente” en la página 37<br />
Atributos de componente<br />
PartType PartName ParentName UserData<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
Capítulo 1. Componentes 27
Elemento de menú<br />
Utilice los elementos de menú para crear menús desplegables o emergentes.<br />
Una opción de menú describe una acción que se inicia cuando el usuario<br />
selecciona esa opción.<br />
Para crear un menú:<br />
1. Suelte un componente submenú en una barra de menús o en un menú<br />
emergente.<br />
2. Suelte opciones de menú en el submenú.<br />
Nota: Las propiedades, los eventos, etcétera de este componente sólo se pueden<br />
manipular desde su menú emergente de la vista de árbol de proyectos.<br />
Para obtener información relacionada, consulte el apartado:<br />
v “Barra de menús” en la página 27<br />
v “Menú emergente” en la página 37<br />
v “Submenú” en la página 46<br />
Atributos de componente<br />
Checked Enabled FileName Label<br />
ParentName PartName PartType UserData<br />
Eventos a los que puede aplicarse<br />
Create Destroy MenuSelect<br />
28 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Subarchivo de mensajes<br />
Utilice el componente subarchivo de mensajes para visualizar mensajes<br />
predefinidos o para visualizar texto proporcionado en la lógica del programa: por<br />
ejemplo, información de error o de estado.<br />
Este componente está situado siempre en la parte inferior de la ventana y ocupa la<br />
anchura de la ventana. No se puede cambiar la anchura de este componente; sin<br />
embargo, sí se puede cambiar la altura para que se visualicen más mensajes. En<br />
tiempo de ejecución, los usuarios pueden utilizar las barras de desplazamiento<br />
para ver todos los mensajes.<br />
Atributos de componente<br />
AddMsgID AddMsgText Count DragEnable*<br />
DropEnable* Enabled FirstSel FontBold<br />
FontItalic FontName FontSize FontStrike*<br />
FontUnder* ForeColor ForeMix GetItem<br />
Handle* Height Index MsgSubText<br />
NbrOfSel ParentName PartName PartType<br />
RemoveMsg Selected ShowTips TipText<br />
UserData Visible<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy Drop Enter<br />
MouseEnter MouseExit MouseMove Popup<br />
Select<br />
Capítulo 1. Componentes 29
Edición de múltiples líneas<br />
Utilice el componente edición de múltiples líneas si desea que el usuario pueda<br />
escribir varias líneas de texto.<br />
El componente edición de múltiples líneas tiene límites definidos. A veces no se<br />
visualiza todo el texto que contiene. El usuario puede desplazar el texto vertical y<br />
horizontalmente para ver la parte que no se visualiza.<br />
Atributos de componente<br />
AddLineEnd AddOffset BackColor BackMix<br />
Bottom CanUndo CharOffset Copy<br />
CsrLine CsrPos Cut Delete<br />
DragEnable* DropEnable* Enabled Focus<br />
FontBold FontItalic FontName FontSize<br />
FontStrike* FontUnder* ForeColor ForeMix<br />
Handle* Height InsertLine InsertText<br />
Left LineNumber LineText NbrOfLines<br />
ParentName PartName PartType Paste<br />
ReadOnly Refresh ShowTips Text<br />
TextEnd TextLength TextSelect TextStart<br />
TextString TipText Top TopLine<br />
Undo UserData Visible Width<br />
WordWrap<br />
* Nota:: Consulte la descripción del atributo para conocer las restricciones.<br />
Eventos a los que puede aplicarse<br />
Change Click Create DblClick<br />
Destroy Drop GotFocus KeyPress<br />
LostFocus MouseDown MouseEnter MouseExit<br />
MouseMove MouseUp Popup VKeyPress<br />
30 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Cuaderno<br />
Utilice el componente cuaderno para presentar datos que se pueden agrupar<br />
lógicamente por temas: por ejemplo, información de cliente dividida en categorías<br />
tales como Nombre, Dirección de envío, Pedidos y Créditos.<br />
Un componente cuaderno es una representación gráfica de un cuaderno de espiral.<br />
(En aplicaciones Windows, recibe el nombre de control de separadores). Puede<br />
añadir páginas al cuaderno y agruparlas en secciones separadas por hojas<br />
separadoras con pestañas. Si la página de cuaderno tiene lienzo, puede añadir más<br />
de un componente a la misma. Si no tiene lienzo, sólo se puede añadir un<br />
componente.<br />
El usuario puede pasar las páginas de un cuaderno para ir de una página a otra o<br />
ir directamente a una sección del cuaderno pulsando el botón del ratón sobre la<br />
pestaña.<br />
Puede añadir páginas de cuaderno del modo siguiente:<br />
v Utilizando el cuaderno de propiedades del componente cuaderno<br />
v Señalando y pulsando (o arrastrando y soltando) una página de cuaderno o una<br />
página de cuaderno con lienzo en el componente cuaderno.<br />
Para obtener información relacionada, consulte el apartado:<br />
v “Página de cuaderno” en la página 32<br />
v “Página de cuaderno con lienzo” en la página 33<br />
Atributos de componente<br />
BackColor BackMix Bottom Count<br />
Enabled Focus FontBold FontItalic<br />
FontName FontSize FontStrike* FontUnder*<br />
ForeColor ForeMix Handle* Height<br />
Left PageNumber ParentName PartName<br />
PartType Refresh ShowTabs* Top<br />
UserData Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
Capítulo 1. Componentes 31
Página de cuaderno<br />
Utilice el componente página de cuaderno para añadir páginas a un cuaderno.<br />
Solamente puede añadir un componente a una página de cuaderno; el tamaño del<br />
mismo se adaptará a la página. Si desea añadir más de un componente en una<br />
página, debe colocar un componente lienzo en la página de cuaderno. También<br />
puede utilizar el componente página de cuaderno con lienzo para ahorrarse un<br />
paso.<br />
Nota: Las propiedades, los eventos, etcétera de este componente sólo se pueden<br />
manipular desde su menú emergente de la vista de árbol de proyectos.<br />
El usuario puede pulsar las teclas de flecha izquierda y derecha para ir de una<br />
página a otra.<br />
Para obtener información relacionada, consulte los apartados<br />
v “Cuaderno” en la página 31<br />
v “Página de cuaderno con lienzo” en la página 33<br />
Atributos de componente<br />
Enabled ParentName PartName PartType<br />
Refresh TabImage TabLabel UserData<br />
Visible<br />
Eventos a los que puede aplicarse<br />
Create Destroy PageSelect<br />
32 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Página de cuaderno con lienzo<br />
Utilice la página de cuaderno con lienzo para añadir páginas a un componente<br />
cuaderno.<br />
El componente lienzo ocupa el área de cliente de un componente página de<br />
cuaderno. Si se añaden componentes al lienzo se puede crear una interfaz gráfica<br />
de usuario.<br />
Si sólo desea añadir un componente a la página, puede utilizar el componente<br />
página de cuaderno en lugar del componente página de cuaderno con lienzo.<br />
Puesto que dicho componente no tiene lienzo, el tamaño del componente que se<br />
añada se ajustará automáticamente.<br />
Para obtener información relacionada, consulte el apartado:<br />
v “Página de cuaderno” en la página 32<br />
v “Cuaderno” en la página 31<br />
Atributos de componente<br />
Enabled ParentName PartName PartType<br />
TabImage TabLabel UserData Visible<br />
Eventos a los que puede aplicarse<br />
Create Destroy PageSelect<br />
Capítulo 1. Componentes 33
Interfaz ODBC/JDBC<br />
El componente Interfaz ODBC/JDBC proporciona la posibilidad de procesar<br />
archivos de base de datos que den soporte a la API ODBC de Windows o la API<br />
JDBC de JavaSoft. Foxpro, Access y Paradox son ejemplos de estos tipos de<br />
archivos de base de datos.<br />
Para desarrollar aplicaciones que puedan utilizar el componente Interfaz<br />
ODBC/JDBC, debe estar familiarizado con SQL y tener instalado el SDK ODBC de<br />
Windows o el Java 2 Software Development Kit (J2SDK), Standard Edition, de<br />
JavaSoft en la estación de trabajo.<br />
Si no tiene el SDK ODBC, puede bajarlo de Microsoft en el URL siguiente:<br />
http://www.microsoft.com/odbc/download.htm<br />
El soporte de JDBC forma parte del Java 2 Software Development Kit (J2SDK)<br />
Versión 1.2 para Windows. Si no tiene el J2SDK, puede bajarlo de Sun<br />
Microsystems en el URL siguiente:<br />
http://www.javasoft.com/products/<br />
Las aplicaciones que acceden y manipulan datos de una base de datos JDBC<br />
necesitan el controlador de conformidad con JDBC 2.0 adecuado. Puede encontrar<br />
el controlador JDBC y más información en el URL siguiente:<br />
http://java.sun.com/products/jdbc/<br />
Nota: JDBC no se puede utilizar en applets.<br />
Una base de datos ODBC o JDBC se compone de una o varias tablas. Los datos se<br />
almacenan en una tabla como una serie de filas. Cada fila, o registro, contiene un<br />
número de columnas con datos. El programa puede someter sentencias SQL junto<br />
con los atributos del componente Interfaz ODBC/JDBC para manipular filas, o<br />
para traspasar datos entre campos del programa y columnas de tablas.<br />
Para poder procesar una base de datos existente, el programa VA<strong>RPG</strong> debe<br />
conectarse antes a la base de datos e indicar a qué tabla hace referencia. Para<br />
manipular las filas de una tabla, el programa debe crear un conjunto de registros<br />
que identifique los registros que el componente interfaz ODBC/JDBC debe<br />
devolver y mantener. Para acceder a los datos de una fila, debe enlazar cada una<br />
de las columnas utilizadas en la fila de la tabla con un campo del programa. En las<br />
aplicaciones Java no se pueden utilizar los punteros. Una columna está enlazada a<br />
un componente; para enlazar sólo se pueden utilizar los componentes texto estático<br />
y campo de entrada.<br />
Si crea una aplicación Java que utiliza el componente Interfaz ODBC/JDBC, los<br />
usuarios finales que ejecuten la aplicación deben instalar el archivo varpgjdb.jar en<br />
sus estaciones de trabajo y añadir su ubicación en la sentencia classpath. El<br />
programa de utilidad de empaquetamiento no incluye este archivo JAR. El archivo<br />
JAR está ubicado en el subdirectorio adtswin\java.<br />
34 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Atributos de componente<br />
AllowChg* BindPart Bottom BufferDec*<br />
BufferLen* BufferPtr* BufferType* CharData<br />
Column ColumnDec ColumnLen ColumnName<br />
Columns ColumnType Connect Connected<br />
ConnectStr CurrentRow DeleteRow ExecuteSQL<br />
Fetch FetchNext FetchPrior GetTables<br />
Handle* Height InsertRow IsData<br />
Left ParentName PartName PartType<br />
Refresh Rows* SQLError SQLMsgBox<br />
SQLQuery Top UnBind UpdateRow<br />
UserData Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
Capítulo 1. Componentes 35
Recuadro de contorno<br />
Utilice un recuadro de contorno alrededor de un grupo de componentes para<br />
indicar que están relacionados.<br />
Un recuadro de contorno no tiene etiqueta. Si en el recuadro debe aparecer una<br />
etiqueta, utilice el componente recuadro de grupo en lugar de éste.<br />
Para obtener información relacionada, consulte el apartado “Recuadro de grupo”<br />
en la página 19.<br />
Atributos de componente<br />
Bottom Handle* Height Left<br />
ParentName PartName PartType Refresh<br />
Top UserData Visible Width<br />
Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
36 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Menú emergente<br />
Utilice el componente menú emergente para visualizar las opciones que pertenecen<br />
a un componente determinado de la interfaz. Puede añadir opciones de menú y<br />
submenús a los menús emergentes.<br />
Este menú se llama “emergente” porque aparece cuando el usuario pulsa la tecla o<br />
el botón del ratón adecuados.<br />
Nota: Las propiedades, los eventos, etcétera de este componente sólo se pueden<br />
manipular desde su menú emergente de la vista de árbol de proyectos.<br />
Para obtener información relacionada, consulte el apartado:<br />
v “Barra de menús” en la página 27<br />
v “Elemento de menú” en la página 28<br />
v “Submenú” en la página 46<br />
Atributos de componente<br />
Handle* InvName InvPName ParentName<br />
PartName PartType UserData Visible*<br />
X Y<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
No hay eventos para este componente.<br />
Capítulo 1. Componentes 37
Barra de progreso<br />
Utilice el componente barra de progreso para indicar de forma gráfica el progreso<br />
de un proceso como, por ejemplo, copiar archivos, cargar una base de datos, etc.<br />
Por ejemplo, para mostrar el progreso de copiar 100 archivos, puede establecer el<br />
atributo PBRange en 100 y el atributo PBStepSize en 10. El código podría<br />
supervisar el proceso de copiar archivos y el indicador de barra de progreso<br />
avanzaría en pasos por cada diez archivos copiados.<br />
En las aplicaciones Java, si el ancho de la barra de progreso es menor que la altura,<br />
la barra de progreso será vertical.<br />
Atributos de componente<br />
Bottom Handle* Height Left<br />
ParentName PartName PartType PBRange<br />
PBSetPos PBStep PBStepSize Top<br />
UserData Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
38 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Pulsador<br />
Utilice pulsadores para proporcionar un acceso rápido a las acciones más<br />
utilizadas.<br />
Cada componente pulsador controla una acción determinada. Cuando el usuario lo<br />
pulsa, la acción se inicia inmediatamente. La etiqueta de texto del pulsador<br />
describe la acción que éste realiza.<br />
Comparese con el componente “Pulsador gráfico” en la página 17.<br />
Atributos de componente<br />
BackColor BackMix Border* Bottom<br />
Enabled Focus FontBold FontItalic<br />
FontName FontSize FontStrike* FontUnder*<br />
ForeColor ForeMix Handle* Height<br />
HelpEnable HighLight Label Left<br />
ParentName PartName PartType Refresh<br />
ShowTips TipText Top UserData<br />
Validate Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy GotFocus LostFocus<br />
MouseEnter MouseExit MouseMove Popup<br />
Press<br />
Capítulo 1. Componentes 39
Botón de selección<br />
Utilice botones de selección si desea que el usuario seleccione sólo una opción de<br />
un grupo de opciones relacionadas pero que se excluyen mutuamente. Cuando el<br />
usuario efectúa una selección, la opción seleccionada anteriormente en el grupo se<br />
deselecciona.<br />
Un botón de selección tiene forma circular con los bordes en relieve yasulado<br />
hay texto. Cuando está seleccionado, contiene un punto.<br />
No utilice botones de selección si desea que el usuario pueda seleccionar más de<br />
una opción al mismo tiempo. En este caso, consulte el apartado “Recuadro de<br />
selección” en la página 7.<br />
Atributos de componente<br />
BackColor BackMix Bottom Checked<br />
Enabled Focus FontBold FontItalic<br />
FontName FontSize FontStrike* FontUnder*<br />
ForeColor ForeMix Handle* Height<br />
HighLight* Label Left ParentName<br />
PartName PartType Refresh SelectIdx<br />
ShowTips TipText Top UserData<br />
Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy Enter MouseEnter<br />
MouseExit MouseMove Popup Select<br />
40 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Graduador<br />
Utilice el componente graduador si desea que el usuario visualice, establezca o<br />
modifique un valor moviendo el eje del graduador.<br />
Los graduadores suelen utilizarse para valores con incrementos habituales, como<br />
los segundos o los grados, o con el fin de mostrar qué porcentaje se ha realizado<br />
de una tarea.<br />
Por omisión, el graduador se sitúa horizontalmente en el centro de un recuadro<br />
con su eje en el lado izquierdo. Se puede visualizar una escala para mostrar las<br />
unidades de medida del graduador.<br />
Utilice el cuaderno de propiedades del componente graduador para:<br />
v Definir el rango de valores que un graduador puede devolver.<br />
v Colocar el graduador en posición vertical u horizontal en una ventana.<br />
v Proporcionar una escala para indicar la unidad de medida del graduador.<br />
Atributos de componente<br />
AddLink* AllowLink* BackColor BackMix<br />
Bottom Enabled Focus FontBold<br />
FontItalic FontName FontSize FontStrike*<br />
FontUnder* ForeColor ForeMix Handle*<br />
Height Left Maximum Minimum<br />
ParentName PartName PartType Refresh<br />
RemoveLink* ShowTips TickLabel TickNumber<br />
TipText Top UserData Value<br />
Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Change Create Destroy GotFocus<br />
Link* LostFocus MouseEnter MouseExit<br />
MouseMove Popup<br />
*Nota: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.<br />
Capítulo 1. Componentes 41
Selector cíclico<br />
Utilice el componente selector cíclico para visualizar, de forma secuencial, un<br />
grupo de opciones relacionadas, pero que se excluyen mutuamente, que tienen un<br />
orden consecutivo lógico; por ejemplo, los meses del año. Las opciones se<br />
visualizan como si estuvieran organizadas en forma de anillo. El usuario puede<br />
mover (o “girar”) las opciones pulsando la flecha arriba para ir al valor superior<br />
siguiente o la flecha abajo para ir al valor inferior siguiente. También puede<br />
escribir una opción directamente en el campo de entrada del selector cíclico.<br />
Atributos de componente<br />
AddItemEnd Alignment* BackColor BackMix<br />
Bottom Enabled Focus FontBold<br />
FontItalic FontName FontSize FontStrike*<br />
FontUnder* ForeColor ForeMix Handle*<br />
Height Left Maximum Minimum<br />
ParentName PartName PartType ReadOnly<br />
Refresh RemoveItem ShowTips Text<br />
TipText Top UserData Value<br />
Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Change Create Destroy GotFocus<br />
Link* LostFocus MouseEnter MouseExit<br />
MouseMove Popup SpinDown SpinEnd<br />
SpinUp<br />
42 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
*Nota: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.
Texto estático<br />
Utilice el componente texto estático como etiqueta de otros componentes, por<br />
ejemplo, como mensaje de solicitud de un componente campo de entrada. Los<br />
componentes texto estático no aceptan la entrada de datos por parte del usuario.<br />
En las aplicaciones Java, el texto estático se visualiza únicamente en una sola línea.<br />
Atributos de componente<br />
Alignment BackColor BackMix Bottom<br />
DataType DragEnable* DropEnable* Enabled<br />
FontBold FontItalic FontName FontSize<br />
FontStrike* FontUnder* ForeColor ForeMix<br />
Handle* Height Label Left<br />
ParentName PartName PartType Refresh<br />
ShowTips TipText Top UserData<br />
Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Click Create DblClick Destroy<br />
Drop Link* MouseDown MouseEnter<br />
MouseExit MouseMove MouseUp Popup<br />
*Nota: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.<br />
Capítulo 1. Componentes 43
Barra de estado<br />
Utilice el componente barra de estado para proporcionar información adicional<br />
sobre un proceso o una acción de la ventana. Puede crear hasta cinco paneles para<br />
la barra de estado. El componente barra de estado proporciona al componente<br />
ventana mayor flexibilidad que el atributo StatusBar.<br />
Por omisión, la barra de estado se crea en la parte inferior de la ventana. No<br />
obstante, puede utilizar el cuaderno de propiedades para colocarla en la parte<br />
superior. También puede establecer el estilo del borde, el número de paneles y la<br />
alineación del texto.<br />
Atributos de componente<br />
Handle* ParentName PartName PartType<br />
SBIndex SBLabel SBPanes UserData<br />
Visible<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
44 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Subarchivo<br />
Utilice el componente subarchivo para visualizar una lista de registros, cada uno<br />
de los cuales consta de uno o más campos.<br />
La función del componente subarchivo es similar a la de un subarchivo de<br />
AS/400 ®<br />
. El usuario puede desplazar el contenido de la lista en sentido horizontal<br />
o vertical utilizando las barras de desplazamiento del subarchivo.<br />
Para crear un campo de entrada de subarchivo, añada un campo de la ventana<br />
Definir campos de referencia o de la paleta de componentes en el componente<br />
subarchivo. También puede añadir campos utilizando el cuaderno de propiedades.<br />
Nota: El componente subarchivo sólo se puede colocar en una página de cuaderno<br />
con lienzo o en una ventana con lienzo.<br />
Atributos de componente<br />
AddItemEnd AllowEdit AutoSelect BackColor<br />
BackMix Bottom ButtonIdx Buttons<br />
ButtonTip CapsLock CellBGClr CellBGMix<br />
CellFGClr CellFGMix ColBGClr ColBGMix<br />
ColFGClr ColFGMix ColNumber ColWidth<br />
Count DeSelect EnableBtn Enabled<br />
ExtSelect* FirstSel Focus FontArea<br />
FontBold FontItalic FontName FontSize<br />
FontStrike* FontUnder* ForeColor ForeMix<br />
Handle* HdgBGClr HdgBGMix HdgFGClr<br />
HdgFGMix HdgIdx HdgText Height<br />
Hidden HRule Index ItemCount<br />
Left MultSelect NbrOfSel OpenEdit<br />
PageSize ParentName PartName PartType<br />
RemoveItem RowBGClr RowBGMix RowFGClr<br />
RowFGMix Scale Selected SelectItem<br />
SelectList SetTop SflNxtChg ShowTips<br />
SizeToFit StartAt TipText Top<br />
TopRecord UserData Visible VRule<br />
Width<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Change ColSelect Create Destroy<br />
Enter FirstRec GotFocus KeyPress<br />
LastRec LostFocus MouseEnter MouseExit<br />
MouseMove NextRec PageDown PageEnd<br />
PageTop PageUp Popup PrevRec<br />
Select VKeyPress<br />
Capítulo 1. Componentes 45
Submenú<br />
Utilice un submenú para:<br />
v Iniciar un menú en cascada nuevo a partir de una opción de menú de un menú<br />
ya existente.<br />
v Iniciar un menú desplegable a partir de una opción de menú de la barra de<br />
menús.<br />
Tras crear un submenú, puede añadirle opciones de menú colocando componentes<br />
opción de menú, pero solamente en la vista de árbol.<br />
Nota: Las propiedades, los eventos, etcétera de este componente sólo se pueden<br />
manipular desde su menú emergente de la vista de árbol de proyectos.<br />
Para obtener información relacionada, consulte el apartado “Elemento de menú” en<br />
la página 28.<br />
Atributos de componente<br />
ParentName PartName PartType UserData<br />
Eventos a los que puede aplicarse<br />
Create Destroy<br />
46 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Temporizador<br />
Utilice el componente temporizador si el programa debe realizar determinadas<br />
operaciones en intervalos de tiempo preestablecidos. Por ejemplo, puede utilizarlo<br />
para cerrar una ventana o para finalizar una aplicación después de un periodo<br />
determinado de inactividad.<br />
El componente temporizador cuenta unidades de tiempo e inspecciona el intervalo<br />
de tiempo preestablecido entre dos eventos, desencadenando el segundo evento<br />
cuando ha pasado el tiempo necesario.<br />
Cuando se crea un componente temporizador en el constructor GUI, el<br />
componente aparece en forma de icono en la ventana de diseño. Sin embargo, en el<br />
cuaderno de propiedades de un componente temporizador, puede especificar que<br />
no desea que el icono se visualice mientras el programa se ejecuta.<br />
Nota: No utilice el componente temporizador cuando precise un control exacto del<br />
tiempo. El evento Tick puede no producirse en el intervalo exacto que ha<br />
especificado, a causa de otros programas que estén ejecutándose en el<br />
sistema.<br />
Atributos de componente<br />
AddLink* AllowLink* Bottom Interval<br />
Left Multiplier ParentName PartName<br />
PartType RemoveLink* TimerMode TimerTicks<br />
Top UserData Visible<br />
* Nota:: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy Link* Tick<br />
* Nota:: Consulte la descripción del evento si desea saber cuáles son las<br />
restricciones.<br />
Capítulo 1. Componentes 47
Barra de desplazamiento vertical<br />
Utilice el componente barra de desplazamiento vertical para poder desplazarse por<br />
un panel de información de arriba abajo. La información puede ser una lista de<br />
archivos, los registros de una base de datos, las columnas de un documento,<br />
etcétera. Puede utilizar el atributo Range para representar el número total de los<br />
objetos por los que se efectuará el desplazamiento y el atributo PageSize para<br />
determinar el número de objetos que pueden visualizarse en una página.<br />
Atributos de componente<br />
Bottom Enabled Focus Handle*<br />
Height Left NextLine NextPage<br />
PageSize ParentName PartName PartType<br />
Position PrevLine PrevPage Range<br />
Top UserData Visible Width<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Create Destroy Scroll<br />
48 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
Ventana<br />
Las ventanas son el medio primordial que tiene el usuario de interactuar con el<br />
programa. Las aplicaciones deben contener al menos una ventana.<br />
Sólo puede añadir un componente al área de cliente de una ventana, con la<br />
excepción de los componentes que son extensiones del marco de la ventana, como<br />
las barras de menús, los menús emergentes y los subarchivos de mensajes. El<br />
tamaño del componente que añada se ajusta automáticamente al área de cliente.<br />
Si desea que una ventana contenga más de un componente, deberá añadirle un<br />
componente lienzo. Puede utilizar el componente ventana con lienzo para<br />
ahorrarse un paso.<br />
Nota: El componente ventana se encuentra en el apartado Marcos del catálogo de<br />
componentes, no en la paleta de componentes.<br />
Para obtener información relacionada, consulte los apartados:<br />
v “Lienzo” en la página 5<br />
v “Ventana con lienzo” en la página 50<br />
Atributos de componente<br />
Bottom Center Enabled FileName*<br />
Focus* FontBold* FontItalic* FontName*<br />
FontSize* FontStrike* FontUnder* Handle*<br />
Height IconHandle* Label Left<br />
MouseIcon* MouseShape* ParentName PartName<br />
PartType PBRange PBSetPos PBStep<br />
PBStepSize Print ProgresBar Refresh<br />
SBLabel SBPosition SBStyle ShowTips<br />
StatusBar Top UserData Visible<br />
Width WindowMode*<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Activate Close Create DeActivate<br />
Destroy LClickTray Moved RClickTray<br />
ReSize ShutDown<br />
Capítulo 1. Componentes 49
|<br />
Ventana con lienzo<br />
Las ventanas son el medio primordial que tiene el usuario final para interactuar<br />
con el programa. El lienzo, en un componente ventana con lienzo, le permite<br />
añadir varios componentes a la ventana.<br />
Puede colocar diversos componentes en el lienzo señalándolos y pulsando el botón<br />
del ratón y cambiarlos de posición para crear una interfaz gráfica de usuario.<br />
También puede añadir componentes que sean extensiones del marco de la ventana,<br />
como barras de menús, menús emergentes y subarchivos de mensajes.<br />
Si sólo precisa colocar un componente en el área de cliente de la ventana, no<br />
necesita el componente ventana con lienzo: en lugar de éste, debe usar el<br />
componente ventana (que se encuentra en la sección Marcos del catálogo de<br />
componentes). Sin lienzo, el tamaño del componente añadido se ajusta<br />
automáticamente al área de cliente.<br />
Para obtener información relacionada, consulte los apartados:<br />
v “Lienzo” en la página 5<br />
v “Ventana” en la página 49<br />
Atributos de componente<br />
Bottom Center Enabled FileName*<br />
Focus* FontBold* FontItalic* FontName*<br />
FontSize* FontStrike* FontUnder* Handle*<br />
Height IconHandle* Label Left<br />
MouseIcon* MouseShape* ParentName PartName<br />
PartType PBRange PBSetPos PBStep<br />
PBStepSize Print ProgresBar Refresh<br />
SBLabel SBPosition SBStyle ShowTips<br />
StatusBar Top UserData Visible<br />
Width WindowMode*<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Eventos a los que puede aplicarse<br />
Activate Close Create DeActivate<br />
Destroy LClickTray Moved RClickTray<br />
ReSize ShutDown<br />
50 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Capítulo 2. Atributos de componente<br />
Al crear la interfaz gráfica de usuario (GUI) mediante <strong>VisualAge</strong> <strong>RPG</strong>, puede<br />
establecer o cambiar la mayor parte de los atributos de un componente abriendo el<br />
cuaderno de propiedades de ese componente.<br />
También puede establecer los atributos de la mayoría de los componentes en<br />
tiempo de ejecución en el programa de aplicación <strong>VisualAge</strong> <strong>RPG</strong> mediante las<br />
funciones incorporadas o los códigos de operación. Para ello, codifique la función<br />
incorporada %setatr en el código de operación EVAL de formato libre, o utilice el<br />
código de operación SETATR. Para recuperar los valores de los atributos de<br />
componente, codifique la función incorporada %getatr en el código de operación<br />
EVAL de formato libre o utilice el código de operación GETATR.<br />
Este apartado describe los atributos de componente. Cada una de las descripciones<br />
contiene lo siguiente:<br />
v Una descripción general del atributo.<br />
v El tipo de datos del atributo.<br />
v Una lista de los componentes a los que se aplica el atributo.<br />
v Una tabla que indica si el usuario puede establecer u obtener el atributo<br />
mediante las funciones incorporadas o los códigos de operación. Esta tabla<br />
también indica si se puede establecer un atributo utilizando el cuaderno de<br />
propiedades de un componente.<br />
v Los valores permitidos para el atributo.<br />
v Ejemplos de sintaxis de formato libre y de códigos de operación. Para conocer<br />
los detalles de la sintaxis, consulte la publicación <strong>VisualAge</strong> <strong>RPG</strong> Manual de<br />
consulta del lenguaje.<br />
Nota: Algunos ejemplos utilizados en este capítulo utilizan texto en mayúsculas<br />
únicamente. No obstante, la lógica se puede entrar en mayúsculas o en<br />
minúsculas.<br />
v Cualquier restricción aplicable.<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 51
Activate<br />
Establezca este atributo en 1 para activar un objeto ActiveX.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'AX1': 'Activate') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 1 'ACTIVATE'<br />
*<br />
52 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Active<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina si hay otra instancia del componente lógico en ejecución.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El valor de Active puede ser uno de los siguientes:<br />
0 La instancia actual es la única instancia del componente lógico<br />
1 Se está ejecutando otra instancia del componente lógico<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL Act=%getatr('*Component':'*Component':'Active')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'Active' Act<br />
*<br />
Capítulo 2. Atributos de componente 53
AddEvent<br />
Añade el nombre de evento a la lista de filtro de eventos. Puede utilizar el valor<br />
especial *ALL para que el componente ActiveX o bean Java direccione al programa<br />
VA<strong>RPG</strong> todos los eventos disponibles almacenados en la lista. Por omisión, el<br />
componente ActiveX o bean Java no direcciona ningún evento.<br />
Para crear una nueva lista de eventos parcial después de haber emitido<br />
AddEvent(*ALL), primero debe vaciar la lista con el atributo RmvEvent.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
ActiveX Bean Java<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'AX1':'AddEvent')='EVT2'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 'EVT2' 'ADDEVENT'<br />
*<br />
54 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AddItemEnd<br />
Añade un nuevo elemento al final de la lista.<br />
En un componente subarchivo, este atributo se aplica a un campo de entrada de<br />
subarchivo que tenga valores definidos como tipo de validación. Utilice este<br />
atributo para añadir valores a la lista de validación del campo de entrada del<br />
subarchivo. Primero ha de establecer el atributo ColNumber a fin de identificar la<br />
columna con la que se debe trabajar.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista Selector cíclico Subarchivo<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El elemento que se añadirá a la lista o el valor de validación del campo de<br />
entrada del subarchivo<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'LB1':'AddItemEnd')=newitem<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 'NEWITEM' 'ADDITEMEND'<br />
*<br />
Capítulo 2. Atributos de componente 55
AddLineEnd<br />
Añade una nueva línea después de la última línea de un campo de edición de<br />
múltiples líneas.<br />
Tipo Serie<br />
Se aplica a<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
La nueva línea de texto<br />
Ejemplo de formato libre<br />
Obtener el valor de texto de un campo de entrada y añadirlo al final de un<br />
campo de edición de múltiples líneas<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'MLE1':'AddLineEnd')=newtext<br />
*<br />
Ejemplo de formato fijo<br />
Añadir una línea al final de un campo de edición de múltiples líneas.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 'NEWTEXT' 'ADDLINEEND'<br />
*<br />
56 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AddLink<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Enlaza un componente destino con su componente origen. Si el atributo<br />
AllowLink también está establecido, el componente destino genera un evento Link<br />
cuando este componente se modifica.<br />
Para obtener una lista de tipos de componentes que se pueden enlazar, consulte la<br />
Tabla 1.<br />
Tabla 1. Componentes origen y destino permitidos<br />
Cuando Componente<br />
origen<br />
Cambio de modalidad o<br />
posición<br />
Se selecciona Recuadro de<br />
selección<br />
Valor modificado Campo de<br />
entrada<br />
Respuesta del componente de destino<br />
enlazado<br />
Medios El Panel de medios responde al cambio de<br />
modalidad del componente Medios.<br />
El componente Temporizador se habilita o se<br />
inhabilita.<br />
Medios: se establece el nombre de archivo.<br />
Campo de entrada: se actualiza el valor de<br />
texto.<br />
Imagen: se establece el nombre de archivo.<br />
Graduador: se actualiza el valor numérico.<br />
Selector cíclico: se actualiza el valor numérico.<br />
Cambios nombre archivo Imagen<br />
Texto estático: se actualiza el valor de texto.<br />
Texto estático: se actualiza el valor de texto.<br />
Se selecciona Recuadro de<br />
lista<br />
Medios: se establece el nombre de archivo.<br />
Campo de entrada: se actualiza el valor de<br />
texto.<br />
Cambio de control Panel de<br />
medios<br />
Imagen: se establece el nombre de archivo.<br />
Texto estático: se actualiza el valor de texto.<br />
El componente Medios responde al cambio de<br />
modalidad del componente Panel de medios.<br />
Cambio de nivel Graduador Campo de entrada: se actualiza el valor de<br />
texto.<br />
Graduador: se actualiza el valor numérico.<br />
Tick Temporizador<br />
Texto estático: se actualiza el valor de texto.<br />
Texto estático: se actualiza el valor de texto.<br />
El contador del temporizador se pone a cero.<br />
Capítulo 2. Atributos de componente 57
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de selección Campo de entrada Imagen Recuadro de lista<br />
Medios Panel de medios Graduador Temporizador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Enlace y rellene los<br />
campos Nombre de componente de destino y Nombre de<br />
componente padre de destino.<br />
Valor permitido<br />
Nombre del componente con el que se va a enlazar.<br />
El nombre del componente debe tener el formato:<br />
'ventana|componente'<br />
donde ventana es la ventana donde está ubicado el componente y<br />
componente es el nombre del componente.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'CB1':'AddLink')='WIN1|TIMER1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR 'WIN1|TIMER1' 'ADDLINK'<br />
*<br />
58 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AddMsgID<br />
Añade un mensaje al componente subarchivo de mensajes.<br />
Los mensajes se añaden después de los mensajes existentes en el componente<br />
subarchivo de mensajes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo de<br />
mensajes<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El identificador de mensaje (msgid), que es un número de cuatro dígitos de<br />
longitud como máximo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MSG1': 'AddMsgID') = 1234<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MSG1' SETATR 1234 'ADDMSGID'<br />
*<br />
Capítulo 2. Atributos de componente 59
AddMsgText<br />
Añade un mensaje al componente subarchivo de mensajes. El mensaje se añade en<br />
forma de serie.<br />
Los mensajes se añaden después de los mensajes existentes en el componente<br />
subarchivo de mensajes.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo de<br />
mensajes<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Serie de texto del mensaje<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'MSG1':'AddMsgText')='Help!'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MSG1' SETATR 'Help!' 'ADDMSGTEXT'<br />
*<br />
60 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AddOffset<br />
Inserta el texto especificado en el campo de edición de múltiples líneas en el<br />
desplazamiento de caracteres especificado mediante el atributo CharOffset.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Serie a insertar en el campo de edición de múltiples líneas<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'CharOffset') = 10<br />
C EVAL %setatr('win01': 'MLE1': 'AddOffset') = 'XXX'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 10 'CHAROFFSET'<br />
C<br />
*<br />
'MLE1' SETATR 'XXX' 'ADDOFFSET'<br />
Capítulo 2. Atributos de componente 61
AddRcd<br />
Añade un registro nuevo a un contenedor<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor que se transfiere a este atributo debe ser una serie que conste de<br />
los parámetros siguientes, cada uno separado por un espacio:<br />
Estructura de registro<br />
ID Valor numérico utilizado para identificar el registro. Declare este<br />
valor de modo que pueda contener la cantidad máxima de<br />
registros que espera que contenga el contenedor.<br />
Nota: Puede utilizar el atributo GetNewID para que <strong>VisualAge</strong><br />
<strong>RPG</strong> genere un identificador exclusivo para usted.<br />
Text Texto que aparecerá junto al icono del registro cuando el<br />
contenedor esté en la vista de iconos o en la vista de árbol.<br />
FileName<br />
Nombre de archivo del icono.<br />
ParentID<br />
Identificador del registro padre de este registro. Si el registro no<br />
tiene padre, este parámetro tendrá el valor 0.<br />
field_data<br />
Este valor es opcional. Si se especifica, los datos se situarán en los<br />
campos correspondientes del registro. Es necesario proporcionar<br />
datos para todos los campos del registro. El número de campos de<br />
cada registro del componente contenedor en el diseñador GUI ya<br />
está definido; por tanto, sólo debe especificar ese número.<br />
Nota: Si los datos de un campo no están disponibles, utilice el<br />
carácter de subrayado (_)como reserva de posición para el<br />
campo. Si un campo contiene blancos intercalados, deben<br />
sustituirse por el carácter de subrayado antes de añadir el<br />
registro. Los blancos intercalados aparecerán en los datos del<br />
campo del registro añadido.<br />
Los datos de los campos se pueden actualizar después de añadir el<br />
registro utilizando el atributo SetRcdFld.<br />
Ejemplo de formato libre<br />
62 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++<br />
D NewRecord<br />
D RecordID 1 6<br />
D FileName 8 64<br />
D Parent 1 6 INZ(0)<br />
D Text 8 20 INZ('Next record')<br />
*<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C Eval RecordID=%getatr('win01': 'CN1': 'GetNewID')<br />
C Eval FileName = 'D:\V<strong>RPG</strong>\NEW.ICO'<br />
C Eval %setatr('win01': 'CN1': 'AddRcd') = NewRecord<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR NewRecord 'ADDRCD'<br />
*<br />
Capítulo 2. Atributos de componente 63
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
AddSrcEvt<br />
Añade un nuevo evento de origen a la lista actual de eventos que supervisa el<br />
componente de referencia a componente lógico. Este atributo permite que un<br />
componente de referencia a componente lógico supervise varios eventos. Para<br />
eliminar eventos de origen de la lista, utilice el atributo RmvSrcEvt.<br />
Para identificar el evento de origen que se añade, especifique juntos los nombres<br />
del componente lógico, la ventana, el componente y el evento. El formato de la<br />
serie es:<br />
'NOMBRECOMPLÓGICO | NOMBREVENTANA | NOMBRECOMP | NOMBREVENTO'<br />
Dado que el compilador no realiza ninguna comprobación de validez, deberá<br />
identificar correctamente cada evento de origen.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++<br />
D Event<br />
*<br />
S 100<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Event='compb|win02|ef02|change'<br />
C EVAL %setatr('win01': 'CRP1':<br />
C<br />
*<br />
'AddSrcEvt')=Event<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++<br />
D Event<br />
*<br />
S 100<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Event='compb|win02|ef02|change'<br />
C<br />
*<br />
'CRP1' SETATR Event 'ADDSRCEVT'<br />
64 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Alarm<br />
Hace que el altavoz emita un pitido.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de este atributo debe establecerse en 1.<br />
Ejemplo de formato libre<br />
Hacer que se oiga un pitido:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*Component':'*Component':'Alarm')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR 1 'ALARM'<br />
*<br />
Capítulo 2. Atributos de componente 65
Alignment<br />
Este atributo determina cómo se alinean el texto y las etiquetas en los<br />
componentes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada* Selector cíclico* Texto estático<br />
* Restricciones:: Una vez establecido este atributo, no puede cambiarse en<br />
tiempo de ejecución.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de Alignment puede ser uno de los siguientes:<br />
1 Texto alineado a la izquierda<br />
2 Texto alineado a la derecha<br />
3 Texto centrado<br />
66 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
Si el texto de un componente está justificado a la izquierda, hacer que esté<br />
alineado a la derecha:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL align = %getatr('win01': 'ST1': 'Alignment')<br />
C align IFEQ 1<br />
C<br />
*<br />
EVAL %setatr('win01': 'ST1': 'Alignment') = 2<br />
C ELSE<br />
C EVAL %setatr('win01': 'ST1': 'Alignment') = 1<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ST1' GETATR 'ALIGNMENT' ALIGN 1 0<br />
C ALIGN IFEQ 1<br />
C<br />
*<br />
'ST1' SETATR 2 'ALIGNMENT'<br />
C ELSE<br />
C<br />
*<br />
*<br />
'ST1' SETATR 1 'ALIGNMENT'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 67
AllowChg<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Identifica los datos de columna como un tipo de datos VA<strong>RPG</strong> no soportado. En<br />
esta columna de datos no se realizan actualizaciones.<br />
Al ejecutar una acción FetchNext, FetchPrior, InsertRow o UpdateRow, los datos<br />
se traspasan del almacenamiento intermedio del campo de programa a la columna<br />
de tabla correspondiente, o viceversa. Si la columna tiene un tipo de datos VA<strong>RPG</strong><br />
no soportado, debe establecer el atributo AllowChg en 0. El valor por omisión es<br />
1. (Consulte el apartado “BufferType” en la página 93 para obtener una lista de los<br />
tipos de datos soportados).<br />
Establezca el atributo Column en la columna deseada antes de establecer el valor<br />
AllowChg.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de AllowChg puede ser uno de los siguientes:<br />
0 Tipo de datos VA<strong>RPG</strong> no soportado.<br />
1 Tipo de datos VA<strong>RPG</strong> soportado. Por omisión, esta opción está<br />
seleccionada.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'ODBC1': 'AllowChg') = 0<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 0 'AllowChg'<br />
*<br />
68 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AllowEdit<br />
Determina si se pueden editar los campos de entrada de subarchivo. El estado de<br />
edición se puede especificar para el subarchivo, el registro, la columna o la casilla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
AllowEdit puede tener uno de estos valores:<br />
1 Impide editar el subarchivo completo.<br />
2 Impide editar el registro que especifica el atributo Index.<br />
3 Impide editar la columna que especifica el atributo ColNumber.<br />
4 Impide editar la casilla que especifican los atributos ColNumber e<br />
Index.<br />
11 Permite editar el subarchivo completo.<br />
12 Permite editar el registro que especifica el atributo Index.<br />
13 Permite editar la columna que especifica el atributo ColNumber.<br />
14 Permite editar la casilla que especifican los atributos ColNumber e<br />
Index.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'SFL1': 'Index') = 5<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'AllowEdit') = 12<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR 5 'INDEX'<br />
C<br />
*<br />
'SFL1' SETATR 12 'ALLOWEDIT'<br />
Capítulo 2. Atributos de componente 69
AllowLink<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Este atributo determina si el componente destino especificado por el atributo<br />
AddLink o DDEAddLink generará un evento Link cuando el componente origen<br />
se modifique.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de selección Campo de entrada Imagen Recuadro de lista<br />
Medios Panel de medios Graduador Temporizador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Enlace y seleccione<br />
Habilitar notificación al destino.<br />
Valor permitido<br />
El valor de AllowLink puede ser uno de los siguientes:<br />
0 El evento Link no se señala<br />
1 El evento Link se señala<br />
70 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL allow = %getatr('win01': 'EF1': 'AllowLink')<br />
*<br />
C allow IFEQ 1<br />
C EVAL %setatr('win01': 'EF1': 'AllowLink') = 0<br />
*<br />
C ELSE<br />
C EVAL %setatr('win01': 'EF1': 'AllowLink') = 1<br />
C ENDIF<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'EF01' GETATR 'ALLOWLINK' ALLOW 1 0<br />
C ALLOW IFEQ 1<br />
C<br />
*<br />
'EF01' SETATR 0 'ALLOWLINK'<br />
C ELSE<br />
C<br />
*<br />
'EF01' SETATR 1 'ALLOWLINK'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 71
AppData<br />
Contiene datos globales a los que cualquier componente puede hacer referencia.<br />
Este atributo proporciona una alternativa a la transferencia de parámetros que, en<br />
caso contrario, deben declararse.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*Component': '*Component': 'AppData')<br />
C = NData<br />
C EVAL TmpFld=%getatr('*Component':'*Component':<br />
C<br />
*<br />
'AppData')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR NData 'APPDATA'<br />
C<br />
*<br />
'*COMPONENT' GETATR 'APPDATA' TmpFld<br />
72 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AppName<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Es el nombre de la aplicación del servidor a la que se conectará el componente<br />
Cliente DDE en una conversación DDE. La aplicación del servidor determina el<br />
nombre del servidor. Consulte la documentación de la aplicación para averiguar el<br />
valor de AppName que se utilizará para dicha aplicación.<br />
El establecimiento de AppName no inicia la conversación DDE. Para obtener<br />
información acerca del inicio de una conversación DDE, consulte el apartado<br />
“DDEMode” en la página 167.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Nombre de la aplicación del servidor<br />
Si el programa del servidor es una aplicación <strong>VisualAge</strong> <strong>RPG</strong>, este atributo<br />
será el nombre de la aplicación, incluida la extensión. Por ejemplo, si la<br />
aplicación <strong>VisualAge</strong> <strong>RPG</strong> se llama server, el atributo AppName debe<br />
definirlo como se indica a continuación:<br />
EVAL %setatr('WIN':'DDE1':'AppName') = 'SERVER.EXE'<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'AppName') = 'APP01'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'APP01' 'APPNAME'<br />
*<br />
Capítulo 2. Atributos de componente 73
Arrange<br />
Ordena los elementos de un contenedor en la vista de iconos de manera que los<br />
iconos quedan alineados en filas.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de este atributo debe ser 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C Eval %setatr('window': 'CN1': 'Arrange') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'ARRANGE'<br />
*<br />
74 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AttrValue<br />
Valor del atributo al que hace referencia el componente referencia a componente.<br />
En primer lugar, debe establecer el componente referencia a componente a fin de<br />
identificar el componente, la ventana y el nombre del componente para el atributo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'COMP1': 'AttrValue')='Test'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'COMP1' SETATR 'Test' 'ATTRVALUE'<br />
*<br />
Capítulo 2. Atributos de componente 75
AudioMode<br />
Establece la modalidad de operación para el componente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de AudioMode puede ser uno de los siguientes:<br />
1 Pausa<br />
2 Reproducir<br />
3 Grabar<br />
4 Parar<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'AUDIO01': 'AudioMode') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AUDIO01' SETATR 1 'AUDIOMODE'<br />
*<br />
76 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
AutoInc<br />
Este atributo hace que se incremente el valor actual de DataPoint cada vez que se<br />
establece el atributo DataValue.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El atributo AutoInc devuelve uno de los valores siguientes:<br />
0 DataPoint no se incrementa automáticamente<br />
1 DataPoint se incrementa automáticamente.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL auto = %getatr('win01': 'GP1': 'AutoInc')<br />
C auto IFEQ 1<br />
C<br />
*<br />
EVAL %setatr('win01': 'GP1': 'AutoInc') = 0<br />
C ELSE<br />
C EVAL %setatr('win01': 'GP1': 'AutoInc') = 1<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'GP01' GETATR 'AUTOINC' Auto 1 0<br />
C AUTO IFEQ 1<br />
C<br />
*<br />
'GP01' SETATR 0 'AUTOINC'<br />
C ELSE<br />
C<br />
*<br />
'GP01' SETATR 1 'AUTOINC'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 77
|<br />
|<br />
|<br />
|<br />
|<br />
AutoScroll<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Permite que un usuario pueda desplazar datos en un campo de entrada cuando se<br />
puede escribir más texto o cuando hay más información disponible de la que se<br />
puede visualizar en el campo de entrada.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Campo de entrada<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de AutoScroll puede ser uno de los siguientes:<br />
0 Desplazamiento automático no permitido<br />
1 Desplazamiento automático permitido<br />
78 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
Conmutar el atributo AutoScroll de un campo de entrada.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL rc = %getatr('win01': 'EF1': 'AutoScroll')<br />
*<br />
C rc IFEQ 1<br />
C EVAL %setatr('win01': 'EF1': 'AutoScroll') = 0<br />
*<br />
C ELSE<br />
C EVAL %setatr('win01': 'EF1': 'AutoScroll') = 1<br />
C ENDIF<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'EF1' GETATR 'AUTOSCROLL' rc 1 0<br />
C rc IFEQ 1<br />
C<br />
*<br />
'EF1' SETATR 0 'AUTOSCROLL'<br />
C ELSE<br />
C 'EF1' SETATR 1 'AUTOSCROLL'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 79
AutoSelect<br />
Indica si se resalta el texto que figura en el campo de entrada cuando éste recibe el<br />
foco. En el caso de un componente subarchivo, establezca primero el atributo<br />
ColNumber para identificar la columna con la que se debe trabajar.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Subarchivo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de AutoSelect puede ser uno de los siguientes:<br />
0 No se resalta el valor del campo de entrada<br />
1 Sí se resalta el valor del campo de entrada<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL highlight=%getatr('win01':'EF1':'AutoSelect')<br />
C highlight IFEQ 0<br />
C EVAL %setatr('win01':'EF1':'AutoSelect')=1<br />
C ELSE<br />
C EVAL %setatr('win01':'EF1':'AutoSelect')=0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'EF1' GETATR 'AUTOSELECT' highlight 1 0<br />
C<br />
*<br />
'EF1' SETATR 1 'AUTOSELECT'<br />
80 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
BackColor<br />
Valor numérico que determina el color de fondo de un componente.<br />
Si el atributo de color de fondo se había establecido mediante el atributo BackMix,<br />
se devuelve el índice de colores que representa de manera más aproximada el<br />
valor de mezcla de colores de fondo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor<br />
Campo de entrada Imagen Recuadro de lista Panel de medios<br />
Edición de múltiples<br />
líneas<br />
Cuaderno Pulsador Botón de selección<br />
Graduador Selector cíclico Texto estático Subarchivo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El color del fondo debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
Capítulo 2. Atributos de componente 81
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Nota: No se puede utilizar el color por omisión (-1) para SETATR.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL color = %getatr('win01': 'EF1': 'BackColor')<br />
C color IFEQ *Red<br />
C EVAL %setatr('win01': 'EF1': 'BackColor') = *Blue<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR *BLUE 'BACKCOLOR'<br />
*<br />
82 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
BackMix<br />
Consulta o establece la mezcla del color de fondo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor<br />
Campo de entrada Imagen Recuadro de lista Panel de medios<br />
Edición de múltiples<br />
líneas<br />
Cuaderno Pulsador Botón de selección<br />
Graduador Selector cíclico Texto estático Subarchivo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
La mezcla del color de fondo debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL color=%getatr('win01':'EF1':'BackMix')<br />
C color IFNE '10:23:200'<br />
C EVAL %setatr('win01':'EF1':'BackMix')='10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR '10:23:200' 'BACKMIX'<br />
*<br />
Capítulo 2. Atributos de componente 83
BarLabel<br />
Indica cuál es la etiqueta del elemento de datos actual (según lo especificado en<br />
DataPoint y DataGroup).<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GPH1': 'BarLabel') = 'BAR01'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GPH1' SETATR 'BAR01' 'BARLABEL'<br />
*<br />
84 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Bass<br />
Nota: Este atributo sólo se utiliza en Windows NT/95/98.<br />
Establece el nivel de bajos del componente medios.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de Bass puede estar entre 0 y 100.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'AUD1': 'Bass') = 37<br />
*<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AUD1' SETATR 37 'BASS'<br />
*<br />
Capítulo 2. Atributos de componente 85
|<br />
|<br />
|<br />
|<br />
|<br />
BindPart<br />
Restricción: Este atributo sólo se utiliza en las aplicaciones Java.<br />
Identifica el componente que se va a enlazar o que está enlazado a la columna de<br />
datos. En el entorno Java, sólo se permite enlazar en los componentes campo de<br />
entrada y texto estático.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El formato del nombre de padre/componente que se va a enlazar es el<br />
siguiente:<br />
'FRAMEWINDOW|PARTNAME'<br />
donde FrameWindow es el nombre de la ventana propietaria de PartName.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'WIN1': 'BindPart')<br />
C = 'WIN1|ENT2'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 'WIN1|ENT2' 'BINDPART'<br />
*<br />
86 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
BlankChar<br />
Especifica el carácter que representará el espacio en blanco en una serie.<br />
El componente contenedor utiliza un blanco como delimitador de elementos en un<br />
registro. Si el elemento que añade contiene blancos como, por ejemplo, el texto del<br />
icono, establezca el atributo BlankChar en un carácter que no sea blanco.<br />
El carácter de blanco por omisión es el subrayado (_).<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'CTR1':'BlankChar')='&'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CTR1' SETATR '&' 'BLANKCHAR'<br />
*<br />
Capítulo 2. Atributos de componente 87
Border<br />
Determina si el componente tiene un borde.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Imagen Pulsador*<br />
* Restricción: Este atributo sólo se puede establecer y obtener para el<br />
componente pulsador en las aplicaciones Java.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de Border puede ser uno de los siguientes:<br />
0 El componente no tiene borde<br />
1 El componente tiene borde<br />
Ejemplo de formato libre<br />
Conmutar el atributo Border de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL brdval = %getatr('win01': 'IMG1': 'Border')<br />
C brdval IFEQ 0<br />
C EVAL %setatr('win01': 'IMG1': 'Border') = 1<br />
*<br />
C ELSE<br />
C EVAL %setatr('win01': 'IMG1': 'Border') = 0<br />
C ENDIF<br />
*<br />
Ejemplo de formato fijo<br />
Conmutar el valor de borde actual de un pulsador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'IMG1' GETATR 'BORDER' brdval 1 0<br />
C brdval IFEQ 1<br />
C<br />
*<br />
'IMG1' SETATR 0 'BORDER'<br />
C ELSE<br />
C 'IMG1' SETATR 1 'BORDER'<br />
C ENDIF<br />
88 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Bottom<br />
Especifica en pixels la coordenada inferior de pantalla del componente u objeto.<br />
Nota: El punto de origen es el ángulo superior izquierdo y empieza por cero.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Calendario Lienzo* Recuadro de selección<br />
Recuadro de<br />
Referencia a<br />
Contenedor Cliente DDE<br />
combinación<br />
componente lógico<br />
Campo de entrada Gráfica Pulsador gráfico Recuadro de grupo<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java Recuadro de lista<br />
Medios Panel de medios Edición de múltiples<br />
líneas<br />
Cuaderno<br />
Interfaz ODBC/JDBC Recuadro de contorno Barra de progreso Pulsador<br />
Botón de selección Graduador Selector cíclico Texto estático<br />
Subarchivo Temporizador Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
* Restricción: Este atributo sólo se puede obtener en tiempo de ejecución<br />
para el componente lienzo.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Número de pixels<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL bot = %getatr('win01': 'Image1': 'Bottom')<br />
C bot SUB 100 newbot<br />
C<br />
*<br />
EVAL %setatr('win01': 'Image1': 'Bottom') = newbot<br />
Ejemplo de formato fijo<br />
Mover una imagen 200 pixels dentro de su ventana.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'IMAGE1' GETATR 'BOTTOM' OldBot 4 0<br />
C OldBot ADD 200 NewBot 4 0<br />
C<br />
*<br />
'IMAGE' SETATR NewBot 'BOTTOM'<br />
Capítulo 2. Atributos de componente 89
|<br />
|<br />
|<br />
|<br />
|<br />
BufferDec<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Especifica el número de posiciones decimales del almacenamiento intermedio de la<br />
columna.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL<br />
%setatr('win01':'ODBC1':'BufferDec')=4<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 4 'BufferDec'<br />
*<br />
90 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
BufferLen<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Especifica la longitud del campo de programa disponible para los datos de<br />
columna. El componente Interfaz ODBC/JDBC necesita conocer la longitud de los<br />
datos establecida y entrar en el campo de programa al traspasar los datos hacia<br />
una columna y desde una columna.<br />
Establezca el atributo Column en la columna deseada antes de utilizar este<br />
atributo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'BufferLen')=20<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 20 'BufferLen'<br />
*<br />
Capítulo 2. Atributos de componente 91
BufferPtr<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Especifica el valor de puntero para el campo de programa. El componente Interfaz<br />
ODBC/JDBC utiliza este valor para traspasar datos de la base de datos al campo<br />
de programa.<br />
Establezca el atributo Column en la columna deseada antes de utilizar este<br />
atributo.<br />
Para obtener la dirección de un campo de programa, utilice la función %ADDR<br />
incorporada según se muestra a continuación:<br />
D FieldPtr S * INZ(%Addr(Campo))<br />
Nota: Este atributo no se utiliza en el entorno Java.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Nota: En el caso de la operación SETATR, el atributo BufferPtr puede<br />
codificarse solamente con sintaxis de formato fijo.<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR FieldPtr 'BufferPtr'<br />
*<br />
92 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
BufferType<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Indica el tipo de datos del campo del programa <strong>VisualAge</strong> <strong>RPG</strong> al que hace<br />
referencia el atributo BufferPtr. El componente Interfaz ODBC/JDBC utiliza el<br />
atributo BufferType para realizar la conversión de datos correcta al traspasar datos<br />
entre el campo del programa y la columna de la tabla. Es importante establecer<br />
correctamente este atributo, ya que no se comprueba si los tipos de campo son<br />
adecuados.<br />
Establezca el atributo Column antes de utilizar el atributo BufferType. Si el campo<br />
de programa está asociado a un componente de la interfaz, puede utilizar el<br />
atributo DataType para obtener el tipo de almacenamiento intermedio.<br />
Si una columna contiene un tipo de datos que el componente Interfaz ODBC/JDBC<br />
no soporta, establezca el atributo AllowChg en 0 para esa columna. El componente<br />
Interfaz ODBC/JDBC no traspasará datos entre ningún campo de programa y la<br />
columna. No se efectuará ningún cambio en los datos.<br />
Utilice el siguiente diagrama para establecer el tipo de datos VA<strong>RPG</strong> en el<br />
correspondiente tipo de datos SQL soportado. Especifique los atributos BufferLen<br />
y BufferDec sólo como se listan en el diagrama.<br />
Tipo de datos SQL Tipo de datos<br />
VA<strong>RPG</strong><br />
Especifica la longitud<br />
del campo de<br />
programa (utilice<br />
BufferLen)<br />
Especifica las posiciones<br />
decimales de la columna<br />
del almacenamiento<br />
intermedio (utilice<br />
BufferDec)<br />
Carácter CHAR X<br />
Decimal Decimal con zona X<br />
Entero Decimal con zona X<br />
Entero pequeño Decimal con zona X<br />
Doble 8F<br />
Doble Decimal con zona X X<br />
Coma flotante 4F<br />
Coma flotante Decimal con zona X X<br />
Real 4F<br />
Real Decimal con zona X X<br />
Para los tipos de datos carácter, decimal, entero o entero pequeño, especifique sólo<br />
el atributo BufferLen.<br />
Tenga en cuenta que los tipos de datos doble, flotante y real pueden definirse en<br />
VA<strong>RPG</strong>, como flotante (F) o decimal con zona. Si los define como decimal con<br />
zona, el tiempo de ejecución de VA<strong>RPG</strong> sólo utilizará el número de posiciones<br />
decimales que especifica el atributo BufferDec cuando traslade datos de la<br />
columna. Esto puede provocar una pérdida de precisión si el origen de datos tiene<br />
más posiciones decimales que las especificadas por el atributo BufferDec. Si define<br />
estos campos como flotantes (F), NO especifique los atributos BufferLen ni<br />
BufferDec.<br />
Tipo Numérico<br />
Capítulo 2. Atributos de componente 93
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de BufferType puede ser uno de los siguientes:<br />
0 Datos numéricos.<br />
Los tipos de datos SQL que se pueden utilizar son:<br />
v Decimal<br />
v Entero<br />
v Entero pequeño<br />
v Coma flotante<br />
v Real<br />
v Doble<br />
1 Datos de tipo carácter.<br />
Los tipos de datos SQL que se pueden utilizar son:<br />
v Carácter<br />
v Carácter de longitud variable<br />
v Fecha<br />
v Hora<br />
v Indicación de la hora<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01':'ODBC1':'BufferType')=1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'BUFFERTYPE'<br />
*<br />
94 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Button<br />
Averigua si se ha pulsado el botón ACEPTAR o CANCELAR o bien si se ha<br />
cerrado el diálogo de archivo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El estado de Button puede ser uno de los siguientes:<br />
0 No se ha cerrado el diálogo de archivo<br />
1 Se ha pulsado el botón ACEPTAR<br />
2 Se ha pulsado el botón CANCELAR<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL But=%getatr('*Component':'*Component':'Button')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'Button' But<br />
*<br />
Capítulo 2. Atributos de componente 95
ButtonIdx<br />
Establece y obtiene el índice para los botones de navegación. El índice debe<br />
establecerse antes de activar el atributo EnableBtn.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El índice puede establecerse con los valores siguientes:<br />
1 Botón de inicio de página<br />
2 Botón de retroceso de página<br />
3 Botón de registro anterior<br />
4 Botón de registro siguiente<br />
5 Botón de avance de página<br />
6 Botón de fin de página<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFI1': 'ButtonIdx') = 4<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFI1' SETATR 4 'BUTTONIDX'<br />
*<br />
96 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Buttons<br />
Amplía o contrae la barra de navegación.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de Buttons puede ser uno de los siguientes:<br />
0 No mostrar los botones<br />
1 Mostrar los botones<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL btnval = %getatr('win01': 'SF1': 'Buttons')<br />
C btnval IFEQ 0<br />
C<br />
*<br />
EVAL %setatr('win01': 'SF1': 'Buttons') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'SF1': 'Buttons') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' GETATR 'BUTTONS' btnval 1 0<br />
C btnval IFEQ 1<br />
C<br />
*<br />
'SF1' SETATR 0 'BUTTONS'<br />
C ELSE<br />
C 'SF1' SETATR 1 'BUTTONS'<br />
C ENDIF<br />
Capítulo 2. Atributos de componente 97
ButtonTip<br />
Define el texto de la ayuda flotante de los botones de navegación correspondientes<br />
establecidos con ButtonIdx.<br />
Este texto puede ser una serie o un mensaje (*MSGnnnn).<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Texto de ayuda flotante<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'SFI1': 'ButtonTip') = string<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFI1' SETATR STRING 'BUTTONTIP'<br />
*<br />
98 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CanUndo<br />
Indica si se puede deshacer la última acción. Si se devuelve 1, la última acción se<br />
puede deshacer. El valor 0 indica que no se puede.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Chng=%getatr('win01':'ML1':'CanUndo')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ML1' GETATR 'CANUNDO' CHNG<br />
*<br />
Capítulo 2. Atributos de componente 99
CapsLock<br />
Determina si el texto que se escribe en un campo de entrada o en un subarchivo de<br />
un campo de entrada se convertirá en mayúsculas.<br />
Nota: Para obtener o establecer CapsLock en un campo de entrada de subarchivo,<br />
debe establecerse el atributo ColNumber en un número de columna<br />
correcto.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Subarchivo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de CapsLock puede ser uno de los siguientes:<br />
0 El texto no se convierte en mayúsculas<br />
1 El texto se convierte en mayúsculas<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'CapsLock') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR 1 'CAPSLOCK'<br />
*<br />
100 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Case<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina si la comparación de búsqueda es sensible a las mayúsculas y<br />
minúsculas.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de Case puede ser uno de los siguientes:<br />
0 La comparación no es sensible a las mayúsculas y minúsculas.<br />
1 La comparación sí es sensible a las mayúsculas y minúsculas.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CB1': 'Case') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR 1 'CASE'<br />
*<br />
Capítulo 2. Atributos de componente 101
CellBGClr<br />
Valor numérico que determina el color de fondo de una casilla de un subarchivo.<br />
Debe utilizar los atributos Index y ColNumber para identificar la casilla en la que<br />
se establecerá el color.<br />
Si el color de fondo se ha establecido mediante el atributo CellBGMix, el color de<br />
fondo devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
102 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CBcolor = %getatr('win01': 'SFL1': 'CellBGClr')<br />
C EVAL %setatr('win01': 'SFL1': 'ColNumber') = 1<br />
C EVAL %setatr('win01': 'SFL1': 'Index') = 4<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'CellBGClr') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'CELLBGCLR' 'CBcolor' 2 0<br />
C 'SFL1' SETATR 1 'COLNUMBER'<br />
C 'SFL1' SETATR 4 'INDEX'<br />
C<br />
*<br />
'SFL1' SETATR 5 'CELLBGCLR'<br />
Capítulo 2. Atributos de componente 103
CellBGMix<br />
Consulta o establece la mezcla de colores de fondo de una casilla de un<br />
subarchivo. Debe utilizar los atributos Index y ColNumber para identificar la<br />
casilla en la que se consultará o se establecerá la mezcla de colores.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla del color de fondo debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CBclrMx = %getatr('win01': 'SFL1': 'CellBGMix')<br />
C CBclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01': 'SFL1': 'CellBGMix') = '10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'CELLBGMIX'<br />
*<br />
104 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CellFGClr<br />
Valor numérico que determina el color de primer plano de una casilla de un<br />
subarchivo. Debe utilizar los atributos Index y ColNumber para identificar la<br />
casilla en la que se establecerá el color.<br />
Si el color de primer plano se ha establecido mediante el atributo CellFGMix, el<br />
color de primer plano devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
Capítulo 2. Atributos de componente 105
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CFcolor = %getatr('win01': 'SFL1': 'CellFGClr')<br />
C EVAL %setatr('win01': 'SFL1': 'ColNumber') = 1<br />
C EVAL %setatr('win01': 'SFL1': 'Index') = 4<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'CellFGClr') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'CELLFGCLR' 'CFcolor' 2 0<br />
C 'SFL1' SETATR 1 'COLNUMBER'<br />
C 'SFL1' SETATR 4 'INDEX'<br />
C<br />
*<br />
'SFL1' SETATR 5 'CELLFGCLR'<br />
106 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CellFGMix<br />
Consulta o establece la mezcla de colores de primer plano de una casilla de un<br />
subarchivo. Debe utilizar los atributos Index y ColNumber para identificar la<br />
casilla en la que se consultará o se establecerá la mezcla de colores.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla de colores de primer plano debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CFclrMx=%getatr('win01':'SFL1':'CellFGMix')<br />
C CFclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01':'SFL1':'CellFGMix')='10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'CELLFGMIX'<br />
*<br />
Capítulo 2. Atributos de componente 107
Center<br />
Cuando se establece en 1, la ventana se centrará al visualizarse por primera vez. El<br />
usuario podrá mover después esta ventana como desee.<br />
Si después de centrar la ventana, la coordenada xoydelángulo superior<br />
izquierdo es negativa, ambas coordenadas se establecerán en (0,0) para garantizar<br />
que la barra de título de la ventana sea siempre visible.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana Ventana con lienzo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El atributo sólo puede establecerse en 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('FW1': 'FW1': 'Center') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'FW1' SETATR 1 'CENTER'<br />
*<br />
108 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CharData<br />
Devuelve el texto de tipo carácter para una columna específica de un conjunto de<br />
registros devuelto. Establezca el atributo Column antes de utilizar este atributo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ColData=%getatr('win01':'ODBC1':'CharData')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'CHARDATA' COLDATA<br />
*<br />
Capítulo 2. Atributos de componente 109
CharOffset<br />
Determina el valor de desplazamiento de carácter en un campo de edición de<br />
múltiples líneas donde se insertará el texto cuando se establezca el atributo<br />
AddOffset.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Desplazamiento de carácter<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'MLE1': 'CharOffset') = 10<br />
C<br />
*<br />
EVAL value = %getatr('win01': 'MLE1': 'CharOffset')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 10 'CHAROFFSET'<br />
C<br />
*<br />
'MLE1' SETATR 'text' 'ADDOFFSET'<br />
110 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Checked<br />
Determina si el componente está marcado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de selección Opción de menú Botón de selección<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, en el caso de los componentes recuadro<br />
de selección y botón de selección, es necesario elegir el estilo<br />
Selected (seleccionado). En el caso de los componentes opción de<br />
menú, hay que seleccionar el estilo Checked (marcada).<br />
Valor permitido<br />
El estado Checked del componente puede ser uno de los siguientes:<br />
0 El componente no está marcado<br />
1 El componente está marcado<br />
Ejemplo de formato libre<br />
Establecer el estado de marca de un recuadro de selección con el mismo<br />
estado que un botón de selección:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ischecked = %getatr('win01': 'RB1': 'Checked')<br />
*<br />
C EVAL %setatr('win01': 'CB1': 'Checked') = ischecked<br />
*<br />
Ejemplo de formato fijo<br />
Conmutar el estado de marca de un recuadro de selección:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'CB1' GETATR 'CHECKED' ischecked<br />
C ischecked IFEQ 1<br />
C<br />
*<br />
'CB1' SETATR 0 'CHECKED'<br />
C ELSE<br />
C 'CB1' SETATR 1 'CHECKED'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 111
ChildCount<br />
Devuelve el número de hijos directos de un padre especificado por RecordId.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL children = %getatr('win01': 'CTR1': 'ChildCount')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CTR1' GETATR 'CHILDCOUNT' children<br />
*<br />
112 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ChildList<br />
Devuelve una lista, delimitada por espacios en blanco, de los hijos directos de un<br />
registro que se halla en el componente contenedor. Para especificar de qué registro<br />
desea la lista, utilice el atributo RecordId.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL list = %getatr('win01': 'CTR1': 'ChildList')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CTR1' GETATR 'CHILDLIST' list<br />
*<br />
Capítulo 2. Atributos de componente 113
ClearAll<br />
Si se establece ClearAll, se elimina la totalidad del texto de usuario del calendario.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El único valor válido de ClearAll es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'ClearAll') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1 'CLEARALL'<br />
*<br />
114 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ClearDate<br />
Si se establece ClearDate, se elimina el texto de usuario para la fecha indicada por<br />
DayIdx/MonthIdx/YearIdx.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El único valor válido de ClearDate es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'ClearDate') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1 'CLEARDATE'<br />
*<br />
Capítulo 2. Atributos de componente 115
ClearMonth<br />
Si se establece ClearMonth, se elimina el texto de usuario establecido para el mes<br />
indicado por MonthIdx/YearIdx.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El único valor válido de ClearMonth es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'ClearMonth') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1 'CLEARMONTH'<br />
*<br />
116 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ClearYear<br />
Si se establece ClearYear, se elimina el texto de usuario establecido para el año<br />
indicado por YearIdx.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El único valor válido de ClearYear es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'ClearYear') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1 'CLEARYEAR'<br />
*<br />
Capítulo 2. Atributos de componente 117
ClipBoard<br />
Copia texto al área común o desde ésta.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
Obtener el contenido del portapapeles:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('*Component':'*Component':'ClipBoard')=text<br />
C<br />
*<br />
EVAL text=%getatr('*Component':'*Component':'ClipBoard')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'*COMPONENT' SETATR text 'CLIPBOARD'<br />
C<br />
*<br />
'*COMPONENT' GETATR 'CLIPBOARD' text<br />
118 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColBGClr<br />
Valor numérico que determina el color de fondo de una columna de subarchivo.<br />
Debe utilizar el atributo ColNumber para identificar la columna que tendrá<br />
definido el color.<br />
Si el color de fondo se ha establecido con el atributo ColBGMix, el color de fondo<br />
devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
Capítulo 2. Atributos de componente 119
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CBcolor = %getatr('win01': 'SFL1': 'ColBGClr')<br />
C EVAL %setatr('win01': 'SFL1': 'ColNumber') = 1<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'ColBGClr') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'COLBGCLR' 'CBcolor' 2 0<br />
C 'SFL1' SETATR 1 'COLNUMBER'<br />
C<br />
*<br />
'SFL1' SETATR 5 'COLBGCLR'<br />
120 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColBGMix<br />
Consulta o establece la mezcla de colores de fondo de una columna de subarchivo.<br />
Debe utilizar el atributo ColNumber para identificar la columna en la que se<br />
consultará o se establecerá la mezcla de colores.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla del color de fondo debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CBclrMx = %getatr('win01': 'SFL1': 'ColBGMix')<br />
C CBclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01': 'SFL1': 'ColBGMix') = '10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'COLBGMIX'<br />
*<br />
Capítulo 2. Atributos de componente 121
ColFGClr<br />
Valor numérico que determina el color de primer plano de una columna de<br />
subarchivo. Debe utilizar el atributo ColNumber para identificar la columna que<br />
tendrá definido el color.<br />
Si el color de primer plano se ha establecido mediante el atributo ColFGMix, el<br />
color de primer plano devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
122 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CFcolor = %getatr('win01': 'SFL1': 'ColFGClr')<br />
C EVAL %setatr('win01': 'SFL1': 'ColNumber') = 1<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'ColFGClr') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'COLFGCLR' 'CFcolor' 2 0<br />
C 'SFL1' SETATR 1 'COLNUMBER'<br />
C<br />
*<br />
'SFL1' SETATR 5 'COLFGCLR'<br />
Capítulo 2. Atributos de componente 123
ColFGMix<br />
Consulta o establece la mezcla de colores de primer plano de una columna de<br />
subarchivo. Debe utilizar el atributo ColNumber para identificar la columna en la<br />
que se consultará o se establecerá la mezcla de colores.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla de colores de primer plano debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CFclrMx = %getatr('win01': 'SFL1': 'ColFGMix')<br />
C CFclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01': 'SFL1': 'ColFGMix') = '10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'COLFGMIX'<br />
*<br />
124 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Collapsed<br />
Se aplica a un contenedor en la vista de árbol. Este atributo puede utilizarse para<br />
ampliar o contraer elementos en un registro especificado por el atributo RecordID.<br />
La especificación del identificador de registro cero invierte el estado de todos los<br />
registros en la vista de árbol.<br />
Al ampliar un registro específico de una aplicación Java, los registros hijo y padre<br />
del registro se hacen visibles. Al contraer un registro, sólo se ocultan los registros<br />
hijo; los registros padre permanecen visibles.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de Collapsed puede ser uno de los siguientes:<br />
1 Contraer el registro<br />
0 Ampliar el registro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
* Contraer el registro<br />
C Eval %setatr('window': 'CN1': 'Collapsed') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'COLLAPSED'<br />
*<br />
Capítulo 2. Atributos de componente 125
ColNumber<br />
Establece el número de columna de campo a utilizar al establecer otros atributos<br />
de subarchivo. Este atributo se utiliza con el atributo Index para indicar a qué<br />
campo de un registro de subarchivo se hace referencia.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Número de columna de campo<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'SF1': 'Index') = 5<br />
C EVAL %setatr('win01': 'SF1': 'ColNumber') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' SETATR 5 'INDEX'<br />
C<br />
*<br />
'SF1' SETATR 2 'COLNUMBER'<br />
126 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Color<br />
Establece y obtiene el color de las áreas indicadas por el valor del atributo<br />
ColorArea.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Gráfica<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
Capítulo 2. Atributos de componente 127
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Nota: No se puede utilizar el color por omisión (-1) para SETATR.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL color = %getatr('win01': 'GP1': 'Color')<br />
C color IFEQ *Red<br />
C EVAL %setatr('win01': 'GP1': 'Color') = *Blue<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GP1' SETATR *BLUE 'COLOR'<br />
*<br />
128 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColorArea<br />
Indica el área a la que deben aplicarse los atributos Color y ColorMix al obtenerla<br />
o definirla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Gráfica<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Para el componente gráfica, el valor de ColorArea puede ser uno de los<br />
siguientes:<br />
1 Color del título<br />
2 Color de fondo<br />
3 Color de las etiquetas de los ejes<br />
4 Color de las líneas de los ejes<br />
5 Color de las etiquetas de los puntos de datos<br />
6 Color de resaltado<br />
7 Color de fondo de la gráfica<br />
8 Color de los bordes<br />
9 Color de las barras/sectores/líneas<br />
Para el componente calendario, el valor de ColorArea puede ser uno de<br />
los siguientes:<br />
1 Fondo<br />
2 Cuadrícula<br />
3 Interior de calendario<br />
4 Flechas de cambio de mes<br />
5 Contornos de las flechas de cambio de mes<br />
6 Contorno de mes/año<br />
7 Fondo de mes/año<br />
8 Primer plano de mes/año<br />
9 Fondo de nombres de día<br />
10 Primer plano de nombres de día<br />
11 Contorno de fecha seleccionada<br />
Capítulo 2. Atributos de componente 129
12 Contorno de hoy<br />
13 Color por omisión para los contornos definidos por el usuario<br />
14 Color por omisión para el texto de usuario<br />
15 Border<br />
16 Números de fecha<br />
17 Contornos de los número de fecha<br />
18 Contorno definido por el usuario (sólo en tiempo de ejecución)<br />
19 Texto de usuario (sólo en tiempo de ejecución)<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL colarea = %getatr('win01': 'GP1': 'ColorArea')<br />
C colarea IFEQ 3<br />
C EVAL %setatr('win01': 'GP1': 'ColorArea') = 4<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GP1' SETATR 4 'COLORAREA'<br />
*<br />
130 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColorMix<br />
Establece y obtiene la mezcla de colores indicada mediante el valor del atributo<br />
ColorArea.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario Gráfica<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
La mezcla de colores debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL color=%getatr('win01':'GP1':'ColorMix')<br />
C color IFNE '10:23:200'<br />
C EVAL %setatr('win01':'GP1':'ColorMix')='0:0:255'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GP1' SETATR '10:23:200' 'COLORMIX'<br />
*<br />
Capítulo 2. Atributos de componente 131
Column<br />
Establece cuál es la columna de una tabla a la que hacen referencia otros atributos<br />
como, por ejemplo, BufferLen, BufferPtr y BufferType.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Entre 1yelnúmero de columnas de la tabla.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'Column')=12<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 12 'COLUMN'<br />
*<br />
132 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColumnDec<br />
Devuelve el número de posiciones decimales definido para una columna.<br />
Establezca el atributo Column antes de utilizar este atributo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Dec=%getatr('win01':'ODBC1':'ColumnDec')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'COLUMNDEC' DEC<br />
*<br />
Capítulo 2. Atributos de componente 133
ColumnLen<br />
Devuelve la longitud definida de una columna específica de una tabla. Establezca<br />
el atributo Column antes de utilizar este atributo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Len=%getatr('win01':'ODBC1':'ColumnLen')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'COLUMNLEN' LEN<br />
*<br />
134 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColumnName<br />
Devuelve el nombre de una columna específica de un conjunto de registros.<br />
Establezca el atributo Column antes de utilizar este atributo. Una consulta SQL con<br />
los atributos SQLQuery y ExecuteSQL ejecutada correctamente mostrará los<br />
nombres de columna disponibles.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL CName=%getatr('win01':'ODBC1':'ColumnName')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'COLUMNNAME' CNAME<br />
*<br />
Capítulo 2. Atributos de componente 135
Columns<br />
Devuelve el número de columnas en el conjunto de resultados. Una consulta SQL<br />
con los atributos SQLQuery y ExecuteSQL ejecutada correctamente mostrará el<br />
número de columnas disponibles.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Cols=%getatr('win01':'ODBC1':'Columns')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'COLUMNS' COLS<br />
*<br />
136 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ColumnType<br />
Devuelve el tipo de datos de una columna. Antes de utilizar este atributo,<br />
establezca los atributos Column y ExecuteSQL.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
El valor devuelto puede ser uno de los siguientes:<br />
1 Carácter de longitud variable<br />
2 Carácter de longitud variable largo<br />
3 Carácter<br />
4 Numérico<br />
5 Decimal<br />
6 Entero<br />
7 Entero pequeño<br />
8 Indicación de la hora<br />
0 Para los siguientes tipos de datos JDBC: fecha, hora, entero<br />
grande, bit, doble, flotante, real, entero pequeño, binario, binario de<br />
longitud variable largo, binario de longitud variable, otros, nulo<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL CType=%getatr('win01':'ODBC1':'ColumnType')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'COLUMNTYPE' CTYPE<br />
*<br />
Capítulo 2. Atributos de componente 137
ColWidth<br />
Determina el ancho de una columna de subarchivo en pixels.<br />
El atributo ColNumber debe estar establecido para indicar a qué columna afecta.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'SFI1': 'ColWidth') = 50<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFI1' SETATR 50 'COLWIDTH'<br />
*<br />
138 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
CompName<br />
Es el nombre del componente lógico al que se hace referencia.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C Eval %setatr('win1': 'comp1': 'CompName')='Palette'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'COMP1' SETATR 'Palette' 'COMPNAME'<br />
*<br />
Capítulo 2. Atributos de componente 139
Connect<br />
Establezca este atributo en 1 para conectar el componente Interfaz ODBC/JDBC<br />
con una base de datos. Antes de utilizar este atributo, establezca el atributo<br />
ConnectStr para determinar con qué origen de datos se conecta.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'Connect')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'CONNECT'<br />
*<br />
140 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Connected<br />
Determina tras un intento de conexión con una tabla si la conexión se ha<br />
establecido correctamente. Si el atributo devuelve 1, la conexión se ha establecido.<br />
Todos los demás valores indican que la conexión no se ha establecido.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Status=%getatr('win01':'ODBC1':'Connected')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'CONNECTED' STATUS<br />
*<br />
Capítulo 2. Atributos de componente 141
ConnectStr<br />
Proporciona la serie de conexión que debe pasarse al gestor ODBC para establecer<br />
una conexión con un origen de datos. Establezca este atributo antes de utilizar el<br />
atributo Connect. Si establece la serie de conexión en *BLANKS, aparecerá el<br />
diálogo Seleccionar origen de datos. En este diálogo podrá seleccionar la tabla con la<br />
que conectarse.<br />
Consulte la documentación de la API ODBC para conocer la sintaxis de una serie<br />
de conexión.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'ConnectStr')=Str<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR STR 'CONNECTSTR'<br />
*<br />
142 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Copy<br />
Copia el texto seleccionado en el portapapeles, sin suprimirlo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'Copy') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 1 'copy'<br />
*<br />
Capítulo 2. Atributos de componente 143
Count<br />
Proporciona el número de elementos de la parte de lista de un componente.<br />
El atributo Count se actualiza cada vez que se añade o suprime un elemento de la<br />
lista.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
Contenedor Recuadro de lista Subarchivo de<br />
combinación<br />
mensajes<br />
Cuaderno Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL rc = %getatr('win01': 'LB1': 'Count')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'COUNT' count 2 0<br />
*<br />
144 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CsrAtEnd<br />
Establezca este atributo en 1 para colocar el cursor detrás del último carácter de un<br />
campo de entrada, cuando éste pasa a ser el campo activo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'EN1': 'CsrAtEnd') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EN1' SETATR 1 'CSRATEND'<br />
*<br />
Capítulo 2. Atributos de componente 145
CsrLine<br />
Indica la línea en la que está situado el cursor.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Número de línea<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'CsrLine') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 2 'CSRLINE'<br />
*<br />
146 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CsrPos<br />
Indica la posición del cursor respecto al primer carácter del campo de edición de<br />
múltiples líneas.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La posición del cursor<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'CsrPos') = 4<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 4 'CSRPOS'<br />
*<br />
Capítulo 2. Atributos de componente 147
CurrentDir<br />
Devuelve el directorio de trabajo actual.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Dir = %getatr('*component': '*component':<br />
C<br />
*<br />
'CurrentDir)<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'CurrentDir' Dir<br />
*<br />
148 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
CurrentRow<br />
Devuelve el número de fila actual del conjunto de resultados.<br />
Nota: En las aplicaciones Java, este atributo necesita el controlador adecuado de<br />
conformidad con JDBC 2.0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL CRow=%getatr('win01':'ODBC1':'CurrentRow')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'CURRENTROW' CROW<br />
*<br />
Capítulo 2. Atributos de componente 149
Cut<br />
Suprime el texto seleccionado y lo copia en el portapapeles.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'Cut') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 1 'cut'<br />
*<br />
150 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DataGroup<br />
Se utiliza junto con DataPoint para indicar un dato específico o independiente<br />
cuando se hace referencia a un grupo de puntos en su totalidad.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor debe ser mayor que 0.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GR1': 'DataGroup') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GR1' SETATR 1 'DATAGROUP'<br />
*<br />
Capítulo 2. Atributos de componente 151
DataPoint<br />
Se utiliza junto con DataGroup para indicar un dato específico.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor debe ser mayor que 0.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GR1': 'DataPoint') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GR1' SETATR 1 'DATAPOINT'<br />
*<br />
152 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DataType<br />
Determina el tipo de datos permitidos en este campo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Texto estático<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de DataType puede ser uno de los siguientes:<br />
0 Numéricos con zona - Este componente sólo admite caracteres<br />
numéricos. También admite un guión (-)como carácter inicial<br />
para indicar que el número es negativo.<br />
1 Carácter - Este componente sólo admite caracteres alfanuméricos.<br />
2 Sólo DBCS - Este componente sólo admite caracteres DBCS.<br />
3 DBCS Cualquiera - Este componente admite caracteres SBCS o<br />
DBCS, pero no ambos al mismo tiempo, en función del primer<br />
carácter que se entre.<br />
4 DBCS Mixto - Este componente admite caracteres SBCS y DBCS.<br />
Ejemplo de formato libre<br />
Obtener el tipo de carácter para un campo de entrada:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL type = %getatr('win01': 'EF1': 'DataType')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'DATATYPE' type 1 0<br />
*<br />
Capítulo 2. Atributos de componente 153
DataValue<br />
Especifica el valor asignado a un dato en concreto<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GR1': 'DataValue') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GR1' SETATR 1 'DATAVALUE'<br />
*<br />
154 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Date<br />
Indica la fecha seleccionada actualmente. La fecha siempre es una serie con el<br />
formato AAAAMMDD y se corresponde con los atributos Year/Month/Day.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
La fecha cuyo formato sea AAAAMMDD<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'Date') = '19980221'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR '19980221' 'DATE'<br />
*<br />
Capítulo 2. Atributos de componente 155
DateIdx<br />
Permite que el usuario defina datos en una fecha que no se visualiza en la página<br />
actual del calendario. La fecha siempre es una serie con el formato AAAAMMDD<br />
y coincide con YearIdx/MonthIdx/DayIdx.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de índice<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'DateIdx') =<br />
C = '19980221'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR '19980221' 'DATEIDX'<br />
*<br />
156 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DateText<br />
Es el texto que se visualiza dentro de la casilla de la fecha indicada por<br />
DayIdx/MonthIdx/YearIdx.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'DateText') = 'text'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 'text' 'DATETEXT'<br />
*<br />
Capítulo 2. Atributos de componente 157
DateUnder<br />
Devuelve la fecha que hay debajo del cursor en forma de serie AAAAMMDD. Si el<br />
ratón no se encuentra encima de una fecha, DateUnder devuelve una serie vacía.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL yyyymmdd = %getatr('win01': 'CAL1':<br />
C<br />
*<br />
'DateUnder')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'DATEUNDER' yyyymmdd<br />
*<br />
158 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Day<br />
Indica el día seleccionado actualmente. Si se establece, se actualiza la fecha<br />
seleccionada en el componente calendario para que los cambios queden reflejados.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El día del mes<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'Day') = 21<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 21 'DAY'<br />
*<br />
Capítulo 2. Atributos de componente 159
DayIdx<br />
Permite que el usuario defina datos en una fecha que no se visualiza en la página<br />
actual del calendario.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de índice<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'DayIdx') = 21<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 21 'DAYIDX'<br />
*<br />
160 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DayLen<br />
Indica el formato de visualización del nombre de los días.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de DayLen puede ser uno de los siguientes:<br />
1 Nombre completo<br />
2 Nombre abreviado de tres caracteres<br />
3 Prefijo abreviado de dos caracteres (por ejemplo, SU, MO, TU...)<br />
4 Prefijo abreviado de un solo carácter (por ejemplo, S, M, T...)<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'DayLen') = 2<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'DAYLEN' daylen<br />
*<br />
Capítulo 2. Atributos de componente 161
DayNumPos<br />
Indica la posición de los números que representan los días del mes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de DayNumPos puede ser uno de los siguientes:<br />
1 Parte superior izquierda<br />
2 Parte superior derecha<br />
3 Parte inferior izquierda<br />
4 Parte inferior derecha<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'DayNumPos') = 3<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'DAYNUMPOS' daynumpos<br />
*<br />
162 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DayNumRect<br />
Indica si se dibujará un contorno para los días del mes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de DayNumRect puede ser uno de los siguientes:<br />
0 Los números no tendrán contorno<br />
1 Los números sí tendrán contorno<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isout = %getatr('win01': 'CAL1': 'DayNumRect')<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'DayNumRect') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'DAYNUMRECT' isout<br />
*<br />
Capítulo 2. Atributos de componente 163
DayStart<br />
Determina cuál es el primer día de la semana.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de DayStart puede ser uno de los siguientes:<br />
0 Domingo<br />
1 Lunes<br />
2 Martes<br />
3 Miércoles<br />
4 Jueves<br />
5 Viernes<br />
6 Sábado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'DayStart') = 2<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 2 'DAYSTART'<br />
*<br />
164 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DDEAddLink<br />
Al establecer este atributo se establece una conversación de enlace dinámico DDE<br />
entre la aplicación del servidor definida por los atributos AppName y Topic yel<br />
componente indicado por el parámetro componente.<br />
Cuando se establece una conversación de enlace dinámico, la aplicación del<br />
servidor señalará automáticamente un evento Data al componente cliente DDE<br />
cuando cambie el elemento especificado mediante el atributo Item del componente<br />
cliente DDE. A continuación, el componente cliente DDE actualizará el componente<br />
enlazado con los datos nuevos si se ha establecido el atributo AllowLink.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, seleccione el pulsador Añadir y<br />
especifique valores en el recuadro de diálogo Añadir enlace DDE.<br />
Valor permitido<br />
El parámetro componente debe codificarse tal como se muestra a<br />
continuación:<br />
'ventana|componente'<br />
Capítulo 2. Atributos de componente 165
Ejemplo de formato libre<br />
Establecer una conversación de enlace dinámico entre un campo de<br />
entrada y una celda de una hoja de cálculo. Cuando la celda cambie, el<br />
contenido del campo de entrada también cambiará.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'DDE1':'AppName')='APP01'<br />
C EVAL %setatr('win01':'DDE1':'Topic')='APP01.WG2'<br />
C EVAL %setatr('win01':'DDE1':'Item')='A1'<br />
C<br />
*<br />
EVAL %setatr('win01':'DDE1':'DDEAddLink')='win1|ef1'<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'win1|ef1' 'DDEADDLINK'<br />
*<br />
166 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DDEMode<br />
Determina la modalidad actual de un componente cliente DDE.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
La modalidad del componente representada por uno de los valores<br />
siguientes:<br />
1 Initiate - Inicia una conversación DDE. Antes de poder iniciar la<br />
conversación, se deben haber establecido los atributos AppName y<br />
Topic.<br />
Cuando se ha iniciado la conversación DDE satisfactoriamente, se<br />
establece una conversación de enlace estático entre la aplicación del<br />
servidor y el componente Cliente DDE. Una conversación de enlace<br />
estático quiere decir que el componente cliente DDE debe<br />
establecer el atributo Request para obtener datos de la aplicación<br />
del servidor, y establecer el atributo Poke para enviar datos a la<br />
aplicación del servidor.<br />
2 Terminate - Finaliza la conversación DDE. Cuando se establece este<br />
atributo, se envía una solicitud de finalización a la aplicación del<br />
servidor. Cuando la aplicación del servidor haya procesado la<br />
solicitud de terminación, responderá señalizando un evento<br />
Terminate en el programa. Para procesar este evento, debe<br />
codificar una subrutina de acción de terminación en el programa.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'DDE1': 'DDEMode') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 1 'DDEMODE'<br />
*<br />
Capítulo 2. Atributos de componente 167
DDERmvLink<br />
Suprime un enlace de este componente cliente DDE. El atributo Item se utiliza<br />
para determinar el enlace que se va a eliminar.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El parámetro part debe codificarse de la forma siguiente:<br />
'ventana|componente'<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'DDE1':'DDERmvLink')='win1|ef1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'win1|ef1' 'DDERMVLINK'<br />
*<br />
168 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DeActivate<br />
Establezca este atributo en 1 para desactivar un objeto ActiveX.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'AX1': 'DeActivate') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 1 'DEACTIVATE'<br />
*<br />
Capítulo 2. Atributos de componente 169
Delete<br />
Suprime el texto seleccionado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'Delete') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 1 'delete'<br />
*<br />
170 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DeleteRow<br />
Determina el número de fila que se suprime del conjunto de resultados. No es<br />
necesario buscar antes una fila para suprimirla. Este atributo ocasionará que se<br />
suprima cualquier fila.<br />
Para suprimir una fila que se acaba de buscar, utilice el atributo CurrentRow para<br />
obtener el número de fila.<br />
Nota: En las aplicaciones Java, este atributo necesita el controlador adecuado de<br />
conformidad con JDBC 2.0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'DeleteRow')=4<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 4 'DELETEROW'<br />
*<br />
Capítulo 2. Atributos de componente 171
DelimChar<br />
Especifica el carácter delimitador que separa varios elementos de una serie de<br />
datos. Los atributos DelimChar y UseDelim se utilizan juntos.<br />
Por ejemplo, puede utilizar el punto y coma (;) para delimitar los elementos de una<br />
serie de datos como se indica: abcd;efgh;ijkl. Al especificar el atributo<br />
AddItemEnd, se generará una lista vertical de elementos de esta serie. De este<br />
modo, se pueden añadir varios elementos con una sola operación.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'CB1':'DelimChar') = ';'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR ';' 'DELIMCHAR'<br />
*<br />
172 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DeSelect<br />
Anula selecciones de elementos de la parte de lista de un componente.<br />
En las aplicaciones Windows, DeSelect no tiene ningún efecto si:<br />
v El contenedor está establecido para una selección ampliada o múltiple y está en<br />
la vista de árbol.<br />
v El subarchivo está establecido para la selección simple.<br />
En estos casos, si se selecciona un elemento, permanece seleccionado.<br />
En las aplicaciones Java, el contenedor se puede establecer para una selección<br />
ampliada o múltiple en la vista de árbol.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación*<br />
Contenedor Recuadro de lista Subarchivo<br />
* Restricción: Este atributo no está soportado en tiempo de ejecución en<br />
las aplicaciones Java para este componente.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Especifique el número del elemento que va a deseleccionar. Para<br />
deseleccionar todos los elementos de la lista, establezca el valor en cero.<br />
Ejemplo de formato libre<br />
Deseleccionar el quinto elemento de la lista.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'DeSelect') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 5 'DESELECT'<br />
*<br />
Capítulo 2. Atributos de componente 173
Dialog<br />
Permite que el usuario elija un diálogo Abrir o Guardar como.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de Dialog puede ser uno de los siguientes:<br />
1 Abrir<br />
2 Guardar como<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL rc = %getatr('*component': '*component':<br />
C<br />
*<br />
'Dialog')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'DIALOG' rc<br />
*<br />
174 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DIRName<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Devuelve el nombre del directorio en el que se halla el componente lógico.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
Texto<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL dir = %getatr('*component': '*component':<br />
C 'DIRName')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'DIRNAME' dir<br />
*<br />
Capítulo 2. Atributos de componente 175
DlgOwner<br />
Indica qué ventana es propietaria de un diálogo. Si no se especifica, por omisión<br />
será propiedad del escritorio.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor debe tener el formato:<br />
NombVent NombVent<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'DlgOwner')=<br />
C<br />
*<br />
='win1 win1'<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 'win1 win1' 'DLGOWNER'<br />
*<br />
176 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DoEvents<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Establezca este atributo en 1 para liberar el control de la subrutina de acciones que<br />
está en ejecución actualmente para que se puedan ejecutar otros eventos. Es útil<br />
sobre todo cuando una subrutina de acciones está en un bucle de larga ejecución.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'DoEvents')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR 1 'DOEVENTS'<br />
*<br />
Capítulo 2. Atributos de componente 177
DragEnable<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Cuando este atributo está habilitado, el usuario puede mover el texto o la etiqueta<br />
de un componente colocando el puntero encima del componente y pulsando y<br />
manteniendo pulsado el botón 2 del ratón.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
Campo de entrada<br />
Texto estático<br />
Recuadro de lista Subarchivo de<br />
mensajes<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El texto o la etiqueta del componente no se puede arrastrar<br />
1 El texto o la etiqueta del componente sí se puede arrastrar<br />
Nota: Este atributo sólo se puede establecer en 1.<br />
Ejemplo de formato libre<br />
Permitir DragEnable para un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'DragEnable') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR 1 'DRAGENABLE'<br />
*<br />
178 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DropEnable<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina si el componente responderá a eventos Drop<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
Campo de entrada<br />
Texto estático<br />
Recuadro de lista Subarchivo de<br />
mensajes<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El componente no responde a los eventos Drop<br />
1 El componente responde a los eventos Drop<br />
Nota: El valor por omisión de este atributo es 0 (desactivado). Una vez<br />
que se ha establecido en 1 en el constructor, no se puede restablecer.<br />
Ejemplo de formato libre<br />
Permitir operaciones de soltar en un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'DropEnable') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR 1 'DROPENABLE'<br />
*<br />
Capítulo 2. Atributos de componente 179
DspHeight<br />
Devuelve la altura de la pantalla en pixels.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
Obtener la altura de la pantalla:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL DH=%getatr('*Component':'*Component':'DspHeight')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'DSPHEIGHT' DH<br />
*<br />
180 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DspWidth<br />
Devuelve la anchura de la pantalla en pixels.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
Obtener la anchura de la pantalla:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Dwd=%getatr('*Component':'*Component':<br />
C 'DspWidth')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'DSPWIDTH' Dwd<br />
*<br />
Capítulo 2. Atributos de componente 181
EditItem<br />
En las aplicaciones de Windows, al establecer este atributo en 1 se abre un campo<br />
de edición en el texto del registro para un contenedor de la vista de iconos o de<br />
árbol. En las aplicaciones Java, este atributo sólo es aplicable a la vista de árbol.<br />
Debe establecer el atributo ColNumber antes de utilizarlo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'EditItem')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'EDITITEM'<br />
*<br />
182 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
EnableBtn<br />
Habilita e inhabilita los botones de navegación. Es necesario establecer ButtonIdx<br />
antes de utilizar el atributo EnableBtn.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Puede ser uno de los siguientes:<br />
0 Inhabilitar el botón<br />
1 Habilitar el botón<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFI1': 'EnableBtn') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFI1' SETATR 1 'ENABLEBTN'<br />
*<br />
Capítulo 2. Atributos de componente 183
Enabled<br />
Determina si el componente responderá a eventos de interfaz del usuario.<br />
Nota: Si se especifica este atributo para los componentes en un lienzo, el valor del<br />
atributo establecido para el lienzo tiene preferencia.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Pulsador gráfico<br />
Recuadro de grupo Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java<br />
Recuadro de lista Panel de medios Opción de menú Subarchivo de<br />
mensajes<br />
Edición de múltiples Cuaderno Página de cuaderno Página de cuaderno<br />
líneas<br />
con lienzo<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Subarchivo Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El componente no puede responder a eventos<br />
1 El componente puede responder a eventos<br />
184 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
Conmutar el estado habilitado de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL rc = %getatr('win01': 'EF1': 'Enabled')<br />
C rc IFEQ 0<br />
C<br />
*<br />
EVAL %setatr('win01': 'EF1': 'Enabled') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'EF1': 'Enabled') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
Conmutar el estado de habilitación de un campo de entrada:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'ENABLED' rc 1 0<br />
C rc IFEQ 1<br />
C<br />
*<br />
'EF1' SETATR 0 'ENABLED'<br />
C ELSE<br />
C 'EF1' SETATR 1 'ENABLED'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 185
Execute<br />
Al establecer este atributo se envía un mandato execute a la aplicación del servidor<br />
en una conversación DDE. La aplicación del servidor determina la estructura de la<br />
serie del mandato. Consulte en la documentación de la aplicación del servidor los<br />
mandatos a los que se da soporte y la estructura de los mismos.<br />
Se debe haber iniciado una conversación DDE satisfactoriamente antes de<br />
establecer este atributo.<br />
Cuando la aplicación del servidor procesa el mandato execute, genera un evento<br />
ExecuteAck. Compruebe el atributo de evento %DDEAck en la subrutina de<br />
acción del evento ExecuteAck para determinar si execute se ha realizado de<br />
manera satisfactoria.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'Execute') = 'FILEOPEN'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'FILEOPEN' 'EXECUTE'<br />
*<br />
186 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ExecuteSQL<br />
Si se establece este atributo en 1, se ejecuta la sentencia SQL que ha sometido el<br />
último atributo SQLQuery.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'ExecuteSQL')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'EXECUTESQL'<br />
*<br />
Capítulo 2. Atributos de componente 187
ExtSelect<br />
Determina si el componente permite la selección ampliada. La selección ampliada<br />
permite que el usuario seleccione un elemento y a continuación seleccione<br />
elementos adicionales. El usuario puede marcar varias entradas arrastrando el<br />
cursor del ratón sobre ellas.<br />
El atributo MultSelect no tiene ningún efecto en el atributo ExtSelect. El atributo<br />
ExtSelect prevalece sobre los valores para MultSelect o para una única selección.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor (1) Recuadro de lista(2.) Subarchivo (2.)<br />
Restricciones:<br />
1. Este atributo sólo se puede establecer en tiempo de<br />
ejecución para el componente contenedor en las<br />
aplicaciones Windows.<br />
2. Este atributo sólo se puede obtener en tiempo de<br />
ejecución para los componentes recuadro de lista y<br />
subarchivo en las aplicaciones Java.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 La selección ampliada no está permitida<br />
1 La selección ampliada está permitida<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL rc = %getatr('win01': 'LB1': 'ExtSelect')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'EXTSELECT' rc 1 0<br />
*<br />
188 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Fetch<br />
Si se establece este atributo en 1, devuelve una fila específica del origen de datos<br />
asociado. Los datos devueltos dependen del último tipo de petición de búsqueda<br />
realizada. Con una petición de atributo GetTables, Fetch devuelve una lista de<br />
tablas de la base de datos. Con una petición ExecuteSQL, Fetch devuelve una fila<br />
de datos de la tabla.<br />
Nota: En las aplicaciones Java, este atributo necesita el controlador adecuado de<br />
conformidad con JDBC 2.0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'Fetch')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'FETCH'<br />
*<br />
Capítulo 2. Atributos de componente 189
FetchNext<br />
Si se establece este atributo en 1, se busca la siguiente fila de datos del conjunto de<br />
resultados.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'FetchNext')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'FETCHNEXT'<br />
*<br />
190 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
FetchPrior<br />
Si se establece este atributo en 1, se busca la fila de datos anterior del conjunto de<br />
resultados.<br />
Nota: En las aplicaciones Java, este atributo necesita el controlador adecuado de<br />
conformidad con JDBC 2.0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'FetchPrior')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'FETCHPRIOR'<br />
*<br />
Capítulo 2. Atributos de componente 191
FieldExit<br />
Hace que, al pulsar Intro, el cursor se desplace al siguiente campo de entrada de<br />
salto de tabulación.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Campo de entrada<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El cursor no se colocará en el siguiente campo de entrada que<br />
corresponda<br />
1 El cursor se colocará en el siguiente campo de entrada que<br />
corresponda<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'EF1': 'FieldExit') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR 1 'FIELDEXIT'<br />
*<br />
192 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
FileName<br />
Especifica el archivo que se asociará con el componente.<br />
En un componente medios, puede ser un archivo válido de ondas (.wav) o MIDI<br />
(.mid) o bien, un archivo válido de vídeo que tenga la extensión .mov o .mpg.<br />
En las aplicaciones de Windows que utilizan un componente control de<br />
animación, el archivo puede ser de vídeo con la extensión .avi. En las aplicaciones<br />
Java que utilizan el componente control de animación con el atributo NbrOfImage,<br />
el archivo puede ser una imagen GIF.<br />
En el caso de los componentes lienzo, pulsador gráfico, imagen u opción de menú,<br />
el archivo debe ser un archivo de imagen válido. Si desea ver una lista de los<br />
formatos de imagen válidos, consulte “Imagen” en la página 21.<br />
En el componente opción de menú, siFileName hace referencia a un bitmap, la<br />
opción de menú se visualiza como el bitmap. Si FileName hace referencia a un<br />
archivo de icono, el icono se visualiza junto al texto de la opción de menú. En las<br />
aplicaciones Java, si FileName hace referencia a un archivo GIF, la imagen GIF se<br />
visualiza junto al texto de la opción de menú.<br />
En las aplicaciones Java, FileName hace referencia a un archivo GIF que se<br />
visualiza como un icono en el componente Ventana.<br />
Si se cambia el atributo FileName de un componente medios, no se procesa el<br />
archivo. Para procesarlo, se debe establecer el atributo AudioMode.<br />
Al cambiar el atributo FileName para un componente lienzo, pulsador gráfico o<br />
imagen, la imagen de ese componente cambiará de inmediato.<br />
Si se establece el atributo FileName para *Component, se visualizará el diálogo<br />
especificado con el atributo Dialog.<br />
El nombre de archivo se puede especificar con la vía de acceso completa o sin ella.<br />
Si sólo se especifica el nombre de archivo, el archivo debe colocarse en el<br />
subdirectorio de ejecución: el subdirectorio RT_JAVA para una aplicación Java o el<br />
subdirectorio RT_WIN32 para una aplicación de Windows 95, Windows 98 o<br />
Windows NT. Si sólo se especifica el nombre de archivo, los archivos sólo se<br />
localizarán si el subdirectorio RT_JAVA o RT_WIN32 es el directorio actual.<br />
Consulte la publicación Programación con <strong>VisualAge</strong> para <strong>RPG</strong> para obtener más<br />
información sobre consideraciones de nombres de archivo.<br />
Capítulo 2. Atributos de componente 193
|<br />
|<br />
|<br />
|<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Control de animación Lienzo *Component Pulsador gráfico<br />
Imagen Medios Opción de menú Ventana<br />
Ventana con lienzo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
* Restricción: en aplicaciones Java, este atributo es sólo de escritura.<br />
Valor permitido<br />
El nombre del archivo de estación de trabajo que se va a asociar con este<br />
componente<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'audio1':'FileName')='BARK.WAV'<br />
*<br />
Ejemplo de formato fijo<br />
Guardar el nombre de archivo actual de un componente imagen y<br />
establecer un nuevo valor para el mismo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'IMAGE01' GETATR 'FILENAME' oldfile 64<br />
C 'IMAGE01' SETATR newfile 'FILENAME'<br />
*<br />
194 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
FillStyle<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Describe la forma en que se rellenará un área<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de FillStyle puede ser uno de los siguientes:<br />
1 Sólido<br />
2 Hueco<br />
3 Relleno de baja densidad<br />
4-9 Grados crecientes de densidad de relleno<br />
10 Relleno de alta densidad<br />
11 Con rayas verticales<br />
12 Con rayas horizontales<br />
13 Con rayas inclinadas hacia delante en diagonal<br />
14 Con rayas muy inclinadas hacia delante en diagonal<br />
15 Con rayas inclinadas hacia atrás en diagonal<br />
16 Con rayas muy inclinadas hacia atrás en diagonal<br />
17 Relleno a media tinta<br />
18 Tramado<br />
19 Tramado en diagonal<br />
Capítulo 2. Atributos de componente 195
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL style = %getatr('win01': 'GP1': 'FillStyle')<br />
*<br />
C style IFEQ 3<br />
C EVAL %setatr('win01': 'GP1': 'FillStyle') = 12<br />
C ENDIF<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GP1' SETATR 12 'FILLSTYLE'<br />
*<br />
196 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
FirstSel<br />
Devuelve el valor de índice del primer elemento seleccionado de la parte de lista<br />
de un componente. Los valores de índice empiezan por 1. Si no hay ningún<br />
elemento seleccionado en la lista, se devuelve cero.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Subarchivo<br />
Códigos de operación<br />
Contenedor Recuadro de lista Subarchivo de<br />
mensajes<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ix = %getatr('win01': 'LB1': 'FirstSel')<br />
*<br />
Ejemplo de formato fijo<br />
Comprobar si se ha seleccionado un elemento de un recuadro de lista y<br />
visualizar un mensaje si no se ha seleccionado:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'FIRSTSEL' IX 3 0<br />
C IX IFEQ *ZERO<br />
C 'Select error'DSPLY STYLE rc<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 197
Focus<br />
Determina si el componente tiene el foco actualmente. Cuando un componente<br />
tiene el foco, el cursor de entrada se traslada a él y la entrada del usuario se dirige<br />
hacia él. Por ejemplo, para que un usuario pueda escribir en un campo de entrada,<br />
éste debe tener el foco.<br />
Cuando un componente recibe el foco, recibe un evento GotFocus.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada<br />
Pulsador gráfico Barra de<br />
Recuadro de lista Edición de múltiples<br />
desplazamiento<br />
horizontal<br />
líneas<br />
Cuaderno Pulsador Botón de selección Graduador<br />
Selector cíclico Subarchivo Barra de<br />
desplazamiento<br />
vertical<br />
Ventana*<br />
* Restricción: Este atributo sólo se puede establecer en tiempo de<br />
ejecución para el componente ventana en las aplicaciones<br />
Java.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El componente no tiene el foco de entrada<br />
1 El componente tiene el foco de entrada<br />
198 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
Nota: Este atributo sólo se puede establecer en 1.
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'Focus') = 1<br />
*<br />
C EVAL rc = %getatr('win01': 'EF1': 'Focus')<br />
*<br />
Ejemplo de formato fijo<br />
Conmutar el foco para un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'EF1' GETATR 'FOCUS' HasFocus 1 0<br />
C<br />
*<br />
'EF1' SETATR 1 'FOCUS'<br />
Capítulo 2. Atributos de componente 199
FontArea<br />
Indica el área del componente calendario, gráfica o subarchivo a la que deben<br />
aplicarse el resto de atributos relacionados con el font.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Gráfica Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Para el componente calendario, el valor puede ser uno de los siguientes:<br />
1 Mes/año<br />
2 Nombre de los días<br />
3 Valor por omisión para texto de usuario<br />
4 Número de los días<br />
5 Texto de usuario<br />
200 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
Para el componente gráfica, el valor puede ser uno de los siguientes:<br />
1 Font del título<br />
2 Font de las etiquetas de los ejes<br />
3 Font de las etiquetas de los puntos de datos<br />
4 Font de la leyenda<br />
Para el componente subarchivo, el valor puede ser uno de los siguientes:<br />
1 Cabecera<br />
2 Grabar
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Farea = %getatr('win01': 'GRA1': 'FontArea')<br />
*<br />
C EVAL %setatr('win01': 'GRA1': 'FontArea') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' GETATR 'FONTAREA' Farea 1 0<br />
*<br />
Capítulo 2. Atributos de componente 201
FontBold<br />
Determina si la etiqueta o el texto se visualiza en negrita.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Recuadro de grupo<br />
Recuadro de lista Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Ventana*<br />
* Restricción: Este atributo no está soportado en tiempo de ejecución en<br />
las aplicaciones Java para este componente.<br />
Nota: En el caso de los componentes calendario y gráfica, el área de font<br />
real afectada queda determinada por el valor del atributo FontArea.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
202 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Font y seleccione el<br />
pulsador Cambiar font.
Valor permitido<br />
El valor de FontBold puede ser uno de los siguientes:<br />
0 El font no se visualiza en negrita<br />
1 El font se visualiza en negrita<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL bold = %getatr('win01': 'ST1': 'FontBold')<br />
C bold IFEQ 0<br />
C EVAL %setatr('win01': 'ST1': 'FontBold') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'ST1': 'FontBold') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'ST1' GETATR 'FONTBOLD' bold 1 0<br />
C<br />
*<br />
'ST1' SETATR 1 'FONTBOLD'<br />
Capítulo 2. Atributos de componente 203
FontItalic<br />
Determina si la etiqueta o el texto se muestra en Cursiva.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Recuadro de grupo<br />
Recuadro de lista Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Ventana*<br />
* Restricción: Este atributo no está soportado en tiempo de ejecución en<br />
las aplicaciones Java para este componente.<br />
Nota: En el caso de los componentes calendario y gráfica, el área de font<br />
real afectada queda determinada por el valor del atributo FontArea.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
204 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Font y seleccione el<br />
pulsador Cambiar font.
Valor permitido<br />
El valor de FontItalic puede ser uno de los siguientes:<br />
0 El font no se visualiza en cursiva<br />
1 El font se visualiza en cursiva<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL italic = %getatr('win01': 'ST1': 'FontItalic')<br />
C italic IFEQ 0<br />
C EVAL %setatr('win01': 'ST1': 'FontItalic') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'ST1': 'FontItalic') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'ST1' GETATR 'FONTITALIC' italic 1 0<br />
C<br />
*<br />
'ST1' SETATR 1 'FONTITALIC'<br />
Capítulo 2. Atributos de componente 205
FontName<br />
Especifica el font que va a utilizarse para el texto o la etiqueta que se aplica a este<br />
componente.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Recuadro de grupo<br />
Recuadro de lista Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Ventana*<br />
* Restricción: Este atributo no está soportado en tiempo de ejecución en<br />
las aplicaciones Java para este componente.<br />
Nota: En el caso de los componentes calendario y gráfica, el área de font<br />
real afectada queda determinada por el valor del atributo FontArea.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Font y seleccione el<br />
pulsador Cambiar font.<br />
Valor permitido<br />
Nombre del font<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldfont = %getatr('win01': 'ST1': 'FontName')<br />
*<br />
C EVAL %setatr('win01': 'ST1': 'FontName') = 'COURIER'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'ST1' GETATR 'FONTNAME' oldfont 64<br />
C<br />
*<br />
'ST1' SETATR 'COURIER' 'FONTNAME'<br />
206 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
FontSize<br />
Especifica el tamaño del font a utilizar con este componente. El atributo FontSize<br />
se expresa en puntos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Recuadro de grupo<br />
Recuadro de lista Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Ventana*<br />
* Restricción: Este atributo no está soportado en tiempo de ejecución en<br />
las aplicaciones Java para este componente.<br />
Nota: En el caso de los componentes calendario y gráfica, el área de font<br />
real afectada queda determinada por el valor del atributo FontArea.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Font y seleccione el<br />
pulsador Cambiar font.<br />
Valor permitido<br />
El tamaño de font especificado en puntos<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldsize = %getatr('win01': 'ST1': 'FontSize')<br />
*<br />
C EVAL %setatr('win01': 'ST1': 'FontSize') = 10<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'ST1' GETATR 'FONTSIZE' oldsize 2 0<br />
C<br />
*<br />
'ST1' SETATR 10 'FONTSIZE'<br />
Capítulo 2. Atributos de componente 207
FontStrike<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina si el texto o la etiqueta aparecen en font tachado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Recuadro de grupo<br />
Recuadro de lista Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Ventana<br />
Nota: En el caso de los componentes calendario y gráfica, el área de font<br />
real afectada queda determinada por el valor del atributo FontArea.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
208 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Font y seleccione el<br />
pulsador Cambiar font.
Valor permitido<br />
El valor de FontStrike puede ser uno de los siguientes:<br />
0 El font no se visualiza tachado<br />
1 El font se visualiza tachado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL strikeout=%getatr('win01':'ST1':'FontStrike')<br />
C strikeout IFEQ 0<br />
C EVAL %setatr('win01':'ST1':'FontStrike')=1<br />
C ELSE<br />
C<br />
*<br />
EVAL %setatr('win01':'ST1':'FontStrike')=0<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'ST1' GETATR 'FONTSTRIKE' strikeout 1 0<br />
C<br />
*<br />
'ST1' SETATR 1 'FONTSTRIKE'<br />
Capítulo 2. Atributos de componente 209
FontUnder<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina si el texto o la etiqueta aparece subrayado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Recuadro de grupo<br />
Recuadro de lista Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Ventana<br />
Nota: En el caso de los componentes calendario y gráfica, el área de font<br />
real afectada queda determinada por el valor del atributo FontArea.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
* Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, utilice la página Font y seleccione el<br />
pulsador Cambiar font.<br />
Valor permitido<br />
El valor de FontUnder puede ser uno de los siguientes:<br />
0 El texto no se subraya<br />
1 El texto se subraya<br />
210 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL underline=%getatr('win01':'ST1':'FontUnder')<br />
*<br />
C underline IFEQ 0<br />
C EVAL %setatr('win01':'ST1':'FontUnder')=1<br />
C ELSE<br />
C EVAL %setatr('win01':'ST1':'FontUnder')=0<br />
C ENDIF<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'ST1' GETATR 'FONTUNDER' underline 1 0<br />
C<br />
*<br />
'ST1' SETATR 1 'FONTUNDER'<br />
Capítulo 2. Atributos de componente 211
ForeColor<br />
Valor numérico que determina el color de primer plano de un componente.<br />
Si el color de primer plano se ha establecido utilizando el atributo ForeMix, el<br />
color de primer plano devuelto es el más próximo al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada<br />
Recuadro de grupo Recuadro de lista Subarchivo de Edición de múltiples<br />
mensajes<br />
líneas<br />
Cuaderno Pulsador Botón de selección Graduador<br />
Selector cíclico Texto estático Subarchivo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul (Blue)<br />
3 Rojo (Red)<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo (Yellow)<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
212 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
10 Rojo oscuro<br />
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Nota: No se puede utilizar el color por omisión (-1) para SETATR.<br />
Ejemplo de formato libre<br />
Establecer contraste invertido de un campo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL fcolor = %getatr('win01': 'EF1': 'ForeColor')<br />
C<br />
*<br />
EVAL bcolor = %getatr('win01': 'EF1': 'BackColor')<br />
C EVAL %setatr('win01': 'EF1': 'ForeColor') = 2<br />
C<br />
*<br />
EVAL %setatr('win01': 'EF1': 'BackColor') = 15<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'EF1' GETATR 'FORECOLOR' fcolor 2 0<br />
C<br />
*<br />
'EF1' SETATR 2 'FORECOLOR'<br />
Capítulo 2. Atributos de componente 213
ForeMix<br />
Consulta o establece la mezcla de colores de primer plano.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada<br />
Recuadro de grupo Recuadro de lista Subarchivo de Edición de múltiples<br />
mensajes<br />
líneas<br />
Cuaderno Pulsador Botón de selección Graduador<br />
Selector cíclico Texto estático Subarchivo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
214 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.
Valor permitido<br />
La mezcla de colores de primer plano debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL colormix = %getatr('win01': 'EF1': 'ForeMix')<br />
C<br />
*<br />
EVAL %setatr('win01': 'EF1': 'ForeMix') = '10:23:200'<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR '10:23:200' 'FOREMIX'<br />
*<br />
Capítulo 2. Atributos de componente 215
Format<br />
Determina el formato de los datos a los que el atributo Item hace referencia y que<br />
se han enviado a la aplicación del servidor en una conversación DDE. El valor de<br />
este atributo lo determina la aplicación del servidor. Consulte la documentación de<br />
dicha aplicación para ver cuáles son los tipos de formato válidos. El valor por<br />
omisión es cf_text. Debe establecerse este atributo antes de utilizar el atributo Poke.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El formato de los datos a los que se hace referencia y que se envían a la<br />
aplicación del servidor<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'Format') = 'bitmap'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'bitmap' 'Format'<br />
*<br />
216 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
FrameRate<br />
Determina el tiempo, en milisegundos, que transcurre entre cada fotograma de una<br />
secuencia GIF animada.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Control de animación<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El número de milisegundos que transcurren entre las distintas imágenes.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'FrameRate')=1000<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ANI' SETATR 1000 'FRAMERATE'<br />
*<br />
Capítulo 2. Atributos de componente 217
FrmtString<br />
Indica la forma en que se visualizan juntos el mes y el año.<br />
Cada vez que se encuentre MMONTH o YYEAR en la serie de formato, se<br />
sustituirán, respectivamente, por el mes o el año actual. Por ejemplo, la serie de<br />
formato ″MMONTH - YYEAR″ correspondiente a julio de 1997 se convierte en<br />
″Julio - 1997″.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'FrmtString') =<br />
C 'MMONTH/YYEAR'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 'MMONTH/YYEAR''FRMTSTRING'<br />
*<br />
218 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
GetItem<br />
Devuelve un elemento de una lista. El elemento a devolver se determina<br />
estableciendo primero el valor del atributo Index.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista Subarchivo de<br />
mensajes<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL x = %getatr('win01': 'LB1': 'GetItem')<br />
*<br />
Ejemplo de formato fijo<br />
Guardar un elemento en un recuadro de lista y cambiarlo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 3 'INDEX'<br />
C 'LB1' GETATR 'GETITEM' saveitem 64<br />
C<br />
*<br />
'LB1' SETATR 'New string' 'SetItem'<br />
Capítulo 2. Atributos de componente 219
GetNewID<br />
Devuelve un ID nuevo y exclusivo para un registro de contenedor. Utilice este<br />
atributo para asegurarse de que todos los ID de registros de contenedor son<br />
exclusivos. El identificador de registro devuelto es un valor numérico.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL id = %getatr('win01': 'CN1': 'GetNewID')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' GETATR 'GetNewID' id<br />
*<br />
220 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
GetRcdFld<br />
Devuelve el contenido de un campo de un registro de contenedor. El atributo<br />
RecordID del contenedor debe estar establecido para indicar qué registro de<br />
contenedor se ha de utilizar. También debe estar establecido el atributo<br />
ColNumber para indicar el campo del que se recuperarán los datos.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'RecordID')=ID<br />
C EVAL %setatr('win01': 'CN1': 'ColNumber')=1<br />
C<br />
*<br />
EVAL data = %getatr('win01': 'CN1': 'GetRcdFld')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR ID 'RECORDID'<br />
C 'CN1' SETATR 1 'COLNUMBER'<br />
C<br />
*<br />
'CN1' GETATR 'GETRCDFLD' data<br />
Capítulo 2. Atributos de componente 221
GetRcdIcon<br />
Devuelve el nombre de archivo del icono que se utiliza para representar este<br />
registro en la vista de árbol y de iconos. El atributo RecordID debe estar<br />
establecido para identificar a qué registro se hace referencia.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL file = %getatr('win01': 'CN1': 'GetRcdIcon')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' GETATR 'GETRCDICON' file<br />
*<br />
222 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
GetRcdText<br />
Devuelve el texto del icono correspondiente a un registro del contenedor. El<br />
atributo RecordID debe estar establecido para identificar a qué registro se hace<br />
referencia.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL text = %getatr('win01': 'CN1': 'GetRcdText')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' GETATR 'GETRCDTEXT' text<br />
*<br />
Capítulo 2. Atributos de componente 223
GetTables<br />
Al establecer este atributo en 1, se recupera la lista de las tablas almacenadas en<br />
una fuente de datos. El componente Interfaz ODBC/JDBC devuelve la lista como<br />
un conjunto de datos. Este atributo es equivalente a la API ODBC de tablas SQL.<br />
Puede utilizar el atributo FetchNext para obtener los registros de tablas del<br />
conjunto de datos devuelto.<br />
Para ODBC, cada registro de la lista corresponde a una tabla y contiene la<br />
información siguiente:<br />
Columna Nombre de<br />
columna<br />
Tipo de datos Comentarios<br />
1 Calificador de tabla Carácter<br />
2 Propietario de tabla Carácter El propietario de la tabla<br />
3 Nombre de tabla Carácter El nombre de la tabla<br />
4 Tipo de tabla Carácter Una serie que representa el tipo<br />
de la tabla<br />
5 Observaciones Carácter Una descripción de la tabla<br />
Consulte la documentación de la API ODBC para conocer los detalles de las<br />
descripciones de columna.<br />
Para JDBC, se devuelve la información siguiente:<br />
Columna Nombre de<br />
columna<br />
Tipo de datos Comentarios<br />
1 TABLE_CAT Carácter Catálogo de tablas (puede ser un<br />
nulo)<br />
2 TABLE_SCHEM Carácter Esquema de tablas (puede ser un<br />
nulo)<br />
3 TABLE_NAME Carácter El nombre de la tabla<br />
4 TABLE_TYPE Carácter Una serie que representa el tipo<br />
de la tabla. Los valores usuales<br />
son: TABLE, VIEW, SYSTEM<br />
TABLE, ALIAS, etcétera.<br />
5 REMARKS Carácter Una descripción de la tabla<br />
Consulte la documentación de la API JDBC para conocer los detalles de las<br />
descripciones de columna.<br />
224 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'GetTables')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'GETTABLES'<br />
*<br />
Ejemplo de GetTables<br />
En este ejemplo se muestra cómo obtener una lista de tablas de una fuente de<br />
datos y listarlas en el recuadro de lista TABLES:<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
C 'ODBC1' Setatr 1 'GetTables'<br />
C 'ODBC1' Setatr 1 'Fetch'<br />
C 'ODBC1' Getatr 'IsData' Temp 1 0<br />
*<br />
C If Temp = 1<br />
C 'Tables' Setatr 0 'RemoveItem'<br />
*<br />
C DoW Temp = 1<br />
C 'ODBC1' Setatr 3 'Column'<br />
C 'ODBC1' Getatr 'CharData' TableName 20<br />
C 'Tables' Setatr TableName 'AddItemEnd'<br />
C 'ODBC1' Setatr 1 'FetchNext'<br />
C 'ODBC1' Getatr 'IsData' Temp<br />
C EndDo<br />
*<br />
C EndIf<br />
Capítulo 2. Atributos de componente 225
GnEqGrpCol<br />
Genera un conjunto aleatorio de colores de manera que todos los puntos de datos<br />
de un mismo grupo sean del mismo color.<br />
Este atributo resulta útil cuando se muestra una gráfica de barras.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor sólo puede definirse en 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'GR1':'GnEqGrpCol')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GR1' SETATR 1 'GNEQGRPCOL'<br />
*<br />
226 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
GnEqPntCol<br />
Genera un conjunto aleatorio de colores de manera que todos los valores de un<br />
punto de datos determinado sean del mismo color.<br />
Este atributo resulta útil cuando se muestra un diagrama circular.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor sólo puede definirse en 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'GR1':'GnEqPntCol')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GR1' SETATR 1 'GNEQPNTCOL'<br />
*<br />
Capítulo 2. Atributos de componente 227
GraphType<br />
Indica qué tipo de gráfica se utiliza.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
GraphType puede tener uno de los siguientes valores:<br />
1 Gráfica de líneas<br />
2 Gráfica de barras<br />
3 Gráfica de barras y de líneas<br />
4 Diagrama circular<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL GRtype = %getatr('win01': 'GRT1': 'GraphType')<br />
C<br />
*<br />
EVAL %setatr('win01': 'GRT1': 'GraphType') = 2<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'GRT1' GETATR 'GRAPHTYPE' 'GRtype' 1 0<br />
C<br />
*<br />
'GRT1' SETATR 2 'GRAPHTYPE'<br />
228 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
GrphHiLite<br />
Determina si se resalta un elemento.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de GrphHiLite puede ser uno de los siguientes:<br />
0 No se resalta el elemento<br />
1 Sí se resalta el elemento<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL lite = %getatr('win01': 'GR1': 'GrphHiLite')<br />
C lite IFEQ 0<br />
C EVAL %setatr('win01': 'GR1': 'GrphHiLite') = 1<br />
C ELSE<br />
C EVAL %setatr('win01':<br />
'GR1': 'GrphHiLite') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'GR1' GETATR 'GRPHHILITE' lite 1 0<br />
C<br />
*<br />
'GR1' SETATR 1 'GRPHHILITE'<br />
Capítulo 2. Atributos de componente 229
GroupLabel<br />
Indica cuál es la etiqueta del grupo actual. Las etiquetas de grupo se utilizan como<br />
encabezamiento de cada uno de los grupos de puntos, si la gráfica es un diagrama<br />
circular, o como leyenda, si ésta está definida para mostrar las etiquetas de grupo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'graph1':'GroupLabel')='July'<br />
*<br />
Ejemplo de formato fijo<br />
Guardar la etiqueta actual de un componente gráfica y establecer un nuevo<br />
valor para la misma:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRAPH01' GETATR 'GROUPLABEL' oldlabel<br />
C 'GRAPH01' SETATR 'July' 'GROUPLABEL'<br />
*<br />
230 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Handle<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Devuelve el handle de ventana del componente. Si está familiarizado con las API<br />
de Windows, puede utilizar este handle para invocar las funciones de API. En el<br />
proceso ODBC, devuelve el handle de entorno.<br />
Por ejemplo, cuando el componente Interfaz ODBC/JDBC se conecta a una base de<br />
datos, se crea un handle de entorno y se devuelve al componente. El componente<br />
utiliza este handle para comunicarse con la API ODBC. El atributo Handle se<br />
puede utilizar para recuperar la variable de handle del programa e invocar las<br />
funciones de la API ODBC. La variable de handle es un valor de 32 bits. Debe<br />
codificar la variable para recibir el handle como tipo de datos entero con una<br />
longitud de 10 y 0 decimales:<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++<br />
D hWnd S 10I 0<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Todos los componentes excepto los siguientes: ActiveX, *componente<br />
lógico, referencia a componente lógico, barra de menús, opción de menú,<br />
página de cuaderno, página de cuaderno con lienzo, submenú y<br />
temporizador.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Devuelve el handle del componente.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL hWnd = %getatr('win01': 'FW1': 'Handle')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'FW1' GETATR 'HANDLE' hWnd<br />
*<br />
Capítulo 2. Atributos de componente 231
HasPrpPage<br />
Devuelve el valor 1 si el objeto ActiveX tiene su propio diálogo de página de<br />
propiedades. Devuelve el valor 0 si no lo tiene.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL PPG=%getatr('win01':'AX1':'HasPrpPage')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' GETATR 'HASPRPPAGE' PPG<br />
*<br />
232 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
HdgBGClr<br />
Valor numérico que determina el color de fondo de una cabecera de subarchivo.<br />
Si el color de fondo se ha establecido mediante el atributo HdgBGMix, el color de<br />
fondo devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión<br />
0 Blanco<br />
1 Negro<br />
2 Azul<br />
3 Rojo<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
Capítulo 2. Atributos de componente 233
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL HBcolor = %getatr('win01': 'SFL1': 'HdgBGClr')<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'HdgBGClr') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'HDGBGCLR' HBcolor 2 0<br />
C<br />
*<br />
'SFL1' SETATR 5 'HDGBGCLR'<br />
234 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
HdgBGMix<br />
Consulta o establece la mezcla de colores de fondo de una cabecera de subarchivo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla del color de fondo debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL HBclrMx=%getatr('win01':'SFL1':'HdgBGMix')<br />
C HBclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01':'SFL1':'HdgBGMix')='10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'HDGBGMIX'<br />
*<br />
Capítulo 2. Atributos de componente 235
HdgFGClr<br />
Valor numérico que determina el color de primer plano de una cabecera de<br />
subarchivo.<br />
Si el color de primer plano se ha establecido mediante el atributo HdgFGMix, el<br />
color de primer plano devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión<br />
0 Blanco<br />
1 Negro<br />
2 Azul<br />
3 Rojo<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
236 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL HFcolor = %getatr('win01': 'SFL1': 'HdgFGClr')<br />
*<br />
C EVAL %setatr('win01': 'SFL1': 'HdgFGClr') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'HDGFGCLR' HFcolor 2 0<br />
C<br />
*<br />
'SFL1' SETATR 5 'HDGFGCLR'<br />
Capítulo 2. Atributos de componente 237
HdgFGMix<br />
Consulta o establece la mezcla de colores de primer plano de una cabecera de<br />
subarchivo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla de colores de primer plano debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL HFclrMx = %getatr('win01': 'SFL1': 'HdgFGMix')<br />
C HFclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01': 'SFL1': 'HdgFGMix')<br />
C = '10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'HDGFGMIX'<br />
*<br />
238 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
HdgIdx<br />
Identifica la fila en una cabecera de columna de varias líneas. Por ejemplo, un<br />
valor de 1 especifica la primera fila. Utilice este atributo junto con el atributo<br />
ColNumber para recuperar o cambiar el texto especificado en el atributo HdgText.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
HdgIdx puede estar entre 1y3.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'SF1':'HdgIdx')=3<br />
C EVAL %setatr('win01': 'SF1': 'ColNumber') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' SETATR 3 'HDGIDX'<br />
C<br />
*<br />
'SF1' SETATR 2 'COLNUMBER'<br />
Capítulo 2. Atributos de componente 239
HdgText<br />
El texto de la cabecera de columna. Este texto puede contener hasta tres líneas de<br />
texto. Puede ser un identificador de mensaje del archivo de mensajes o etiqueta de<br />
sustitución. Para cambiar este texto en tiempo de ejecución, debe establecer antes<br />
los atributos ColNumber y HdgIdx.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'SF1':'HdgText')='HEAD1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' SETATR 'HEAD1' 'HDGTEXT'<br />
*<br />
240 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
Height<br />
Especifica la altura del componente en pixels.<br />
El atributo Height no puede sobrepasar la altura máxima determinada por la<br />
resolución de pantalla utilizada. Por ejemplo, no se puede crear un componente<br />
que tenga 600 pixels de altura si se trabaja con una pantalla de 480 pixels de<br />
altura.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Calendario Lienzo Recuadro de selección<br />
Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica<br />
Pulsador gráfico Recuadro de grupo Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen<br />
Bean Java Recuadro de lista Panel de medios Subarchivo de<br />
mensajes<br />
Edición de múltiples<br />
líneas<br />
Cuaderno Interfaz ODBC/JDBC Recuadro de contorno<br />
Barra de progreso Pulsador Botón de selección Graduador<br />
Selector cíclico<br />
Ventana<br />
Texto estático Subarchivo Barra de<br />
desplazamiento<br />
vertical<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
La altura del componente en pixels<br />
Ejemplo de formato libre<br />
Cambiar la altura de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL howtall = %getatr('win01': 'PB1': 'Height')<br />
C howtall add 150 howtall<br />
C EVAL %setatr('win01': 'PB1': 'Height') = howtall<br />
*<br />
Ejemplo de formato fijo<br />
Hacer que un pulsador tenga 100 pixels menos de altura:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'PB1' GETATR 'HEIGHT' OldHeight 2 0<br />
C OldHeight SUB 100 NewHeight 2 0<br />
C<br />
*<br />
'PB1' SETATR NewHeight 'HEIGHT'<br />
Capítulo 2. Atributos de componente 241
HelpEnable<br />
Visualiza información de Ayuda cuando el usuario pulsa un pulsador o un<br />
pulsador gráfico. Es lo más útil si desea visualizar Ayuda general para una<br />
ventana. Generalmente, para visualizar Ayuda para un componente, el usuario<br />
debe pulsar la tecla F1 cuando el componente tiene el foco.<br />
Nota: Para que el usuario pueda visualizar la ayuda, primero debe dar el foco al<br />
componente pulsador o pulsador gráfico.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Pulsador gráfico Pulsador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades del<br />
diseñador GUI. Para ello, seleccione el estilo Visualizar ayuda.<br />
Valor permitido<br />
El valor de HelpEnable puede ser uno de los siguientes:<br />
0 No está habilitada la Ayuda para este componente<br />
1 Está habilitada la Ayuda para este componente<br />
242 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
Conmutar el estado de ayuda habilitada de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL rc = %getatr('win01': 'PB1': 'HelpEnable')<br />
C rc IFEQ 0<br />
C<br />
*<br />
EVAL %setatr('win01': 'PB1': 'HelpEnable') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'PB1': 'HelpEnable') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
Conmutar el estado de ayuda habilitada de un campo de entrada:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'PB1' GETATR 'HELPENABLE' HasHelp 1 0<br />
C HasHelp IFEQ 1<br />
C<br />
*<br />
'PB1' SETATR 0 'HELPENABLE'<br />
C ELSE<br />
C 'PB1' SETATR 1 'HELPENABLE'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 243
HelpWindow<br />
Origina la visualización de una ventana específica de panel de ayuda. El valor de<br />
helpid es el identificador de ayuda especificado en el archivo de ayuda. Si se<br />
utiliza el valor de identificador de ayuda 0, se visualizará un diálogo de temas de<br />
ayuda del estilo de Windows 95.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El helpid<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'HelpWindow')=<br />
C 12<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 12 'HELPWINDOW'<br />
*<br />
244 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Hidden<br />
Determina si una columna de un subarchivo será visible. El atributo ColNumber<br />
debe estar establecido para indicar a qué columna afecta.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de Hidden puede ser uno de los siguientes:<br />
0 La columna no está oculta<br />
1 La columna está oculta<br />
Ejemplo de formato libre<br />
Cambiar el estado Hidden de una columna<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL rc = %getatr('win01': 'SF1': 'Hidden')<br />
C rc IFEQ 0<br />
C<br />
*<br />
EVAL %setatr('win01': 'SF1': 'Hidden') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'SF1': 'Hidden') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
Cambiar el estado Hidden de un atributo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' GETATR 'HIDDEN' IsHidden 1 0<br />
C IsHidden IFEQ 1<br />
C<br />
*<br />
'SF1' SETATR 0 'HIDDEN'<br />
C ELSE<br />
C 'SF1' SETATR 1 'HIDDEN'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 245
HighLight<br />
Determina si se resalta el componente especificado. Un componente resaltado tiene<br />
el mismo aspecto que un botón en el que se pulse el botón 1 del ratón mientras el<br />
puntero del ratón está sobre el control del botón.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
selección*<br />
Pulsador gráfico Pulsador Botón de selección*<br />
* Restricción: Este atributo no está soportado en tiempo de ejecución en<br />
las aplicaciones Java para este componente.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de HighLight puede ser uno de los siguientes:<br />
0 El componente no está resaltado<br />
1 El componente está resaltado<br />
246 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
Conmutar el estado de HighLight de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL rc = %getatr('win01': 'PB1': 'HighLight')<br />
C rc IFEQ 0<br />
C<br />
*<br />
EVAL %setatr('win01': 'PB1': 'HighLight') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'PB1': 'HighLight') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
Conmutar el estado de HighLight de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'PB1' GETATR 'HIGHLIGHT' IsHighlighted 1 0<br />
C IsHilighted IFEQ 1 0<br />
C<br />
*<br />
'PB1' SETATR 0 'HIGHLIGHT'<br />
C ELSE<br />
C 'PB1' SETATR 1 0 'HIGHLIGHT'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 247
HitItem<br />
Una vez establecido UnderPoint, HitItem indicará qué aspecto de la gráfica está<br />
debajo del punto especificado.<br />
Si debajo del punto especificado se encuentra una barra o un sector, se establecen<br />
DataGroup y DataPoint.<br />
Si la gráfica es un diagrama circular y debajo del punto especificado hay una<br />
etiqueta de grupo, se establece DataGroup.<br />
Nota: Este atributo no se utiliza en las aplicaciones Java.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Uno de los siguientes:<br />
0 No hay nada debajo del punto especificado<br />
1 Debajo del punto especificado hay una barra<br />
2 Debajo del punto especificado hay un sector<br />
3 Debajo del punto especificado está la leyenda<br />
4 Debajo del punto especificado está el título<br />
5 Debajo del punto especificado está la etiqueta del eje de la X<br />
6 Debajo del punto especificado está la etiqueta del eje de la Y<br />
7 Debajo del punto especificado hay una etiqueta de grupo<br />
248 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL itemhit = %getatr('win01': 'GRA1': 'HitItem')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' GETATR 'HITITEM' itemhit 1 0<br />
*<br />
Capítulo 2. Atributos de componente 249
HlitPoints<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Si se establece HlitPoints, se resaltan todos los datos del grupo indicado por<br />
DataGroup. Este es relevante sólo si la gráfica es de barras.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Los valores permitidos son los siguientes:<br />
0 El grupo de datos actual no está resaltado<br />
Cualquier valor que no sea cero<br />
El grupo de datos actual está resaltado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GP1': 'HlitPoints') = 20<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GP1' SETATR 20 'HLITPOINTS'<br />
*<br />
250 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
HRule<br />
Visualiza reglas horizontales.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de HRule puede ser uno de los siguientes:<br />
0 Desactiva la regla<br />
1 Activa la regla<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL Hzrule = %getatr('win01': 'SF1': 'HRule')<br />
C Hzrule IFEQ 0<br />
C EVAL %setatr('win01': 'SF1': 'HRule') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'SF1': 'HRule') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SF1' GETATR 'HRULE' Hzrule 1 0<br />
C<br />
*<br />
'SF1' SETATR 1 'HRULE'<br />
Capítulo 2. Atributos de componente 251
IconHandle<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Devuelve el handle del icono de ventana.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana Ventana con lienzo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ichW=%getatr('win01':'FW1':'IconHandle')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'FW1' GETATR 'ICONHANDLE' ICHW<br />
*<br />
252 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Index<br />
Establece el valor de índice para la parte de lista de un componente. Este valor<br />
determina el elemento que se ve afectado cuando se utilizan determinados<br />
atributos. Por ejemplo, el atributo Index debe establecerse para un elemento para<br />
que el atributo GetItem se pueda utilizar para recuperarlo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista Subarchivo de<br />
mensajes<br />
Subarchivo<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Valor de índice<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'LB1': 'Index') = 4<br />
C<br />
*<br />
EVAL index = %getatr('win01': 'LB1': 'Index')<br />
Ejemplo de formato fijo<br />
Guardar el valor de índice actual para un recuadro de lista y, a<br />
continuación, cambiarlo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'INDEX' OldIndex 2 0<br />
C 'LB1' SETATR NewIndex 'INDEX' 2 0<br />
*<br />
Capítulo 2. Atributos de componente 253
InPlace<br />
Nota: Este atributo sólo se utiliza en Windows NT/95/98.<br />
Utilice InPlace para designar dónde debe reproducirse el archivo de vídeo. Si<br />
InPlace se establece en 1, el vídeo se reproducirá en la posición del componente<br />
medios. Si se establece en 0, el archivo se reproducirá en una ventana aparte.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de InPlace puede ser uno de los siguientes:<br />
0 El archivo se abrirá en una ventana aparte<br />
1 El archivo se abrirá en la posición del componente medios<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'AUD1': 'InPlace') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AUD1' SETATR 1 'INPLACE'<br />
*<br />
254 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
InsertItem<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Inserta un elemento en la parte de lista de un componente. El valor actual del<br />
atributo Sequence para el componente determina dónde se insertará el elemento<br />
en la lista.<br />
Si se utiliza el método Index para insertar elementos en la lista, el elemento que<br />
aparece en la posición del valor de índice y todos los que le siguen descienden un<br />
puesto en la lista.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El elemento a insertar en la lista<br />
Ejemplo de formato libre<br />
Insertar un elemento en un recuadro de lista:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'Index') = 3<br />
C EVAL %setatr('win01': 'LB1': 'InsertItem') = 'new'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 3 'INDEX'<br />
C<br />
*<br />
'LB1' SETATR 'new' 'InsertItem'<br />
Capítulo 2. Atributos de componente 255
InsertLine<br />
Inserta la serie especificada en el campo de edición de múltiples líneas en la<br />
posición especificada mediante el atributo LineNumber actual. Todas las líneas<br />
siguientes a la que se ha insertado descienden una línea.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
La serie que se añadirá al campo de edición de múltiples líneas<br />
Ejemplo de formato libre<br />
Insertar texto en el desplazamiento 10 en un campo de edición de<br />
múltiples líneas:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'LineNumber') = 10<br />
C EVAL %setatr('win01': 'MLE1': 'InsertLine') = 'text'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 10 'LINENUMBER'<br />
C<br />
*<br />
'MLE1' SETATR 'text' 'INSERTLINE'<br />
256 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
InsertMode<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina si la parte del campo de entrada del componente está en modalidad de<br />
inserción. Cuando la modalidad de inserción está activada, al escribir caracteres en<br />
un campo, se desplazan los caracteres situados a la derecha del cursor. Cuando<br />
está desactivada, al escribir caracteres en un campo, se escribe encima de los<br />
existentes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El valor de InsertMode puede ser uno de los siguientes:<br />
0 El campo de entrada no está en modalidad de inserción<br />
1 El campo de entrada está en modalidad de inserción<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL mode = %getatr('win01': 'EF1': 'InsertMode')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'INSERTMODE' InsertMode 1 0<br />
*<br />
Capítulo 2. Atributos de componente 257
InsertRow<br />
Al establecer este atributo en 1, se añade otra fila a la tabla. Antes de añadir la<br />
nueva fila, los datos se traspasan de los campos de programa que están enlazados<br />
a las columnas de las tablas.<br />
Nota: En las aplicaciones Java, este atributo necesita el controlador adecuado de<br />
conformidad con JDBC 2.0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'InsertRow')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 1 'INSERTROW'<br />
*<br />
258 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
InsertText<br />
Inserta el texto especificado en la posición actual del cursor del campo de edición<br />
de múltiples líneas.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
La serie de texto que se debe insertar<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'InsertText') = 'New'<br />
*<br />
Ejemplo de formato fijo<br />
Añadir texto a un campo de edición de múltiples líneas en la posición<br />
actual del cursor::<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 'New' 'InsertText'<br />
*<br />
Capítulo 2. Atributos de componente 259
Interval<br />
Determina el valor de intervalo para un componente temporizador. Este atributo se<br />
utiliza con el atributo Multiplier para determinar el número de milisegundos que<br />
transcurrirán hasta que el temporizador genere un evento Tick.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Temporizador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Valor del intervalo en milisegundos<br />
El valor máximo del intervalo es 65535.<br />
El valor mínimo del intervalo es 100.<br />
Ejemplo de formato libre<br />
Cambiar el valor de intervalo para un componente temporizador a un<br />
segundo (1000 milisegundos):<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldint=%getatr('win01':'TIMER01':'Interval')<br />
*<br />
C EVAL %setatr('win01':'TIMER01':'Interval')=1000<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'TIMER01' GETATR 'INTERVAL' OldInt 6 0<br />
C<br />
*<br />
'TIMER01' SETATR 1000 'INTERVAL'<br />
260 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
InUse<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Consulta si un objeto del contenedor tiene actualmente un énfasis que indica que<br />
se está utilizando. Un objeto con este énfasis está en una ventana de diseño abierta<br />
y se muestra con un recuadro sombreado detrás de su icono, como se indica a<br />
continuación:<br />
El atributo RecordID debe estar establecido para indicar a qué registro se hace<br />
referencia.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de InUse puede ser uno de los siguientes:<br />
0 No se está utilizando<br />
1 Se está utilizando<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CN1': 'InUse') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'INUSE'<br />
*<br />
Capítulo 2. Atributos de componente 261
InvName<br />
*Restricción: Este atributo sólo se utiliza en las aplicaciones Java.<br />
Especifica el nombre del componente que invoca o bien, ancla el menú emergente.<br />
Este atributo se utiliza junto con los atributos InvPname, X e Y.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Menú emergente<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'POP1':'InvName')='INVN1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'POP1' SETATR 'INVN1' 'INVNAME'<br />
*<br />
262 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
InvPName<br />
*Restricción: Este atributo sólo se utiliza en las aplicaciones Java.<br />
Especifica el nombre de padre del componente que invoca o bien, ancla el menú<br />
emergente. Este atributo se utiliza junto con los atributos InvName, X e Y.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Menú emergente<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'POP1':'InvPName')='INVPN1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'POP1' SETATR 'INVPN1' 'INVPNAME'<br />
*<br />
Capítulo 2. Atributos de componente 263
IsData<br />
Indica si una operación Fetch, FetchNext o FetchPrior ha devuelto datos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
0 Indica que no se ha devuelto ningún dato.<br />
1 Indica que se han devuelto datos.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL Flag=%getatr('win01':'ODBC1':'IsData')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'ISDATA' FLAG<br />
*<br />
264 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Item<br />
Un elemento DDE es la unidad de datos específica a la que se hace referencia en<br />
una conversación DDE. Un ejemplo de un elemento DDE es una casilla en una<br />
aplicación de hoja de cálculo. El formato de un elemento DDE lo determina la<br />
aplicación del servidor. Consulte la documentación de la aplicación del servidor<br />
para ver cuáles son los tipos de este formato. En el ejemplo de una hoja de cálculo<br />
podría ser ’A1’.<br />
En la tabla siguiente se resume qué componentes pueden ser un elemento de una<br />
conversación DDE, y a qué atributo se hace referencia durante un evento Poke o<br />
Request. Si se hace referencia a cualquier otro tipo de componente, la operación se<br />
pasa por alto.<br />
Tipo de componente Poke Request<br />
Medios Nombre de archivo Nombre de archivo<br />
Recuadro de selección Etiqueta Etiqueta<br />
Campo de entrada Texto Texto<br />
Imagen Nombre de archivo Nombre de archivo<br />
Recuadro de lista ninguno Elemento seleccionado<br />
Graduador Valor Valor<br />
Texto estático Etiqueta Etiqueta<br />
Temporizador Count Count<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La unidad de datos a la que se hace referencia en una conversación DDE<br />
Si el programa del servidor es un componente lógico <strong>VisualAge</strong> <strong>RPG</strong>, el<br />
elemento será el nombre del componente al que se hace referencia. Se<br />
especifica del modo siguiente:<br />
'ventana|componente'<br />
Capítulo 2. Atributos de componente 265
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'Item') = 'A1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'A1' 'ITEM'<br />
*<br />
266 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ItemCount<br />
Devuelve el número de elementos que hay en la lista de valores de una columna<br />
de subarchivo. Primero ha de establecerse el atributo ColNumber a fin de<br />
identificar la columna con la que se debe trabajar. El tipo de validación de la<br />
columna de subarchivo debe ser Values.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ItCnt = %getatr('win01': 'SF1': 'ItemCount')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' GETATR 'ITEMCOUNT' ITCNT<br />
*<br />
Capítulo 2. Atributos de componente 267
ItemKey<br />
Devuelve el valor de clave de un elemento de la lista. El atributo Index debe estar<br />
establecido para indicar a qué elemento se hace referencia.<br />
Nota: Si no hay definida ninguna clave, ItemKey devolverá una serie nula.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Nota: El atributo ItemKey de recuadro de combinación puede establecerse<br />
utilizando el cuaderno de propiedades.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL keyitem = %getatr('win01': 'LB1': 'ItemKey')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'ITEMKEY' keyitem<br />
*<br />
268 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Label<br />
La serie de texto que está asociada con un componente, como por ejemplo el texto<br />
que aparece en un pulsador.<br />
El atributo label puede tener uno de los formatos siguientes:<br />
v Una serie tecleada<br />
v Una etiqueta de sustitución<br />
v Un identificador de mensaje del archivo de mensajes<br />
Si el título de una columna del contenedor tiene blancos, el contenedor no se<br />
visualizará correctamente. Para corregir esto, sustituya todos los espacios en blanco<br />
del título por el carácter de subrayado ( _ ).<br />
Windows visualiza la barra de título aunque se haya inhabilitado la misma en el<br />
cuaderno de propiedades. Cuando el valor de Barra de título es de no<br />
seleccionado, el usuario todavía puede desplazar la ventana utilizando el ratón en<br />
el área de la barra de título, pero tiene que cerrar la ventana utilizando el teclado.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de selección Contenedor Recuadro de grupo Opción de menú<br />
Pulsador Botón de selección Texto estático Ventana<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI. Para ello, utilice la página General y especifique un<br />
valor en el campo Etiqueta o Título.<br />
Valor permitido<br />
La etiqueta del componente<br />
Capítulo 2. Atributos de componente 269
Ejemplo de formato libre<br />
Cambiar la etiqueta de un pulsador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL checked = %getatr('win01': 'CB1': 'Checked')<br />
C checked IFEQ 0<br />
C<br />
*<br />
EVAL %setatr('win01': 'PB1': 'Label') = 'No'<br />
C ELSE<br />
C EVAL %setatr('win01': 'PB1': 'Label') = 'Yes'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
Cambiar el texto de un pulsador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'PB1' GETATR 'LABEL' OldText 2 0<br />
C 'PB1' SETATR 'Cancel' 'LABEL'<br />
*<br />
270 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
LabelPlace<br />
Indica en qué lugar de la gráfica debe aparecer la etiqueta del dato indicado.<br />
Este atributo no se aplica cuando la gráfica es un diagrama circular.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de LabelPlace puede ser uno de los siguientes:<br />
0 El elemento de datos no debe tener ninguna etiqueta<br />
1 La etiqueta se debe visualizar en el eje de la X<br />
2 La etiqueta debe visualizarse por encima de la barra si el valor del<br />
elemento es positivo, y por debajo si es negativo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('Win1': 'Gra1': 'LabelPlace') = 2<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'Gra1' SETATR 2 'LABELPLACE'<br />
*<br />
Capítulo 2. Atributos de componente 271
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
Left<br />
Especifica la coordenada, en pixels, desde el borde izquierdo del objeto o pantalla<br />
que contiene este componente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Control de animación Calendario Lienzo<br />
Recuadro de selección Recuadro de<br />
Referencia a<br />
Contenedor<br />
combinación<br />
componente lógico<br />
Cliente DDE Campo de entrada Gráfica Pulsador gráfico<br />
Recuadro de grupo Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java<br />
Recuadro de lista Medios Panel de medios Edición de múltiples<br />
líneas<br />
Cuaderno Interfaz ODBC/JDBC Recuadro de contorno Barra de progreso<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático<br />
Ventana<br />
Subarchivo Temporizador Barra de<br />
desplazamiento<br />
vertical<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Número de pixels<br />
Ejemplo de formato libre<br />
Mover un componente a la izquierda en su ventana:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL leftside = %getatr('win01': 'image1': 'Left')<br />
C EVAL %setatr('window': 'part': 'Left') =<br />
leftside - 120<br />
*<br />
Ejemplo de formato fijo<br />
Mover un pulsador 200 pixels a la derecha:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'PB01' GETATR 'LEFT' OldLeft 2 0<br />
C OldLeft ADD 200 NewLeft 2 0<br />
C<br />
*<br />
'PB01' SETATR NewLeft 'LEFT'<br />
272 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
LegendType<br />
Indica el tipo de leyenda utilizada en el componente gráfica.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor debe ser uno de los siguientes:<br />
0 Sin leyenda<br />
1 Sólo puntos<br />
2 Sólo grupos<br />
3 Todos los elementos<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('Win1': 'Gra': 'LegendType') = 2<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'Gra1' SETATR 2 'LegendType'<br />
*<br />
Capítulo 2. Atributos de componente 273
Length<br />
Nota: Este atributo sólo se utiliza en Windows NT/95/98.<br />
Especifica la longitud del archivo en milisegundos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Len = %getatr('win01': 'AUD01': 'Length')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AUD01' GETATR 'LENGTH' Len 6 0<br />
*<br />
274 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
LineNumber<br />
Determina en que línea insertará el atributo InsertLine una nueva línea en un<br />
campo de edición de múltiples líneas. Este valor debe ser superior a cero e inferior<br />
o igual al atributo NbrOfLines actual. Si es mayor que el atributo NbrOfLines<br />
actual, la nueva línea se insertará después de la última.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Número de línea<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldline = %getatr('win01': 'MLE01': 'LineNumber')<br />
C EVAL %setatr('win01': 'MLE01': 'LineNumber') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE01' GETATR 'LINENUMBER' OldLine 2 0<br />
C<br />
*<br />
'MLE01' SETATR 5 'LINENUMBER'<br />
Capítulo 2. Atributos de componente 275
LineText<br />
Recupera el texto de una línea de edición de múltiples líneas especificada por<br />
LineNumber.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El texto de la línea<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL lines = %getatr('win01': 'MLE1': 'NbrOfLines')<br />
C Do lines ix<br />
C EVAL %setatr('win01': 'MLE1': 'LineNumber') = ix<br />
C EVAL nextline= %getatr('win01': 'MLE1': 'LineText')<br />
C ...<br />
C<br />
*<br />
EndDo<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'LINETEXT' line<br />
*<br />
276 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
LookNFeel<br />
*Restricción: Este atributo es sólo de Java.<br />
Permite que las aplicaciones Java utilicen el mecanismo PLAF (Pluggable Look and<br />
Feel) de Swing para controlar el aspecto y la funcionalidad de la interfaz gráfica de<br />
usuario.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de LookNFeel puede ser uno de los siguientes:<br />
Look Serie<br />
Metal javax.swing.plaf.metal.MetalLookAndFeel<br />
Motif com.sun.java.swing.plaf.motif.MotifLookAndFeel<br />
Windows<br />
com.sun.java.swing.plaf.windows.WindowsLookAndFeel<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C eval %setatr('*component':'*component':<br />
C 'LookNFeel')=<br />
C 'com.sun.java.swing.plaf.motif.' +<br />
C<br />
*<br />
'MotifLookAndFeel'<br />
Capítulo 2. Atributos de componente 277
Magnify<br />
Especifica el valor, en forma de porcentaje, del graduador de ampliación en el<br />
componente imagen, que controla la escala de la imagen visualizada. El valor cero<br />
hará que la escala de la imagen se ajuste al componente imagen.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Imagen<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor del graduador de ampliación puede ser uno de los siguientes:<br />
0<br />
25 - 200<br />
Ajustar a escala<br />
El valor de ampliación en forma de porcentaje<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win1': 'Img1': 'Magnify') = 50<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'IMG1' SETATR 50 'MAGNIFY'<br />
*<br />
278 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Masked<br />
Cuando se establece este atributo, al escribir en el campo de entrada se<br />
visualizarán caracteres asteriscos (*) en lugar de los caracteres que se están<br />
escribiendo. Este atributo se utiliza muy a menudo cuando el usuario va a escribir<br />
datos confidenciales, tales como una contraseña o un número de cuenta.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El estado de protección de contraseña del campo puede ser uno de los<br />
siguientes:<br />
0 El campo no está enmascarado<br />
1 El campo está enmascarado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL isMasked = %getatr('win01': 'EF1': 'Masked')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'MASKED' isMasked 1 0<br />
*<br />
Capítulo 2. Atributos de componente 279
Maximum<br />
Determina el valor máximo que puede devolver un graduador o un selector cíclico.<br />
Este atributo sólo está permitido para selectores cíclicos numéricos.<br />
El valor máximo es 65535.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Graduador Selector cíclico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Valor máximo del componente<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL oldmax=%getatr('window':'SLIDER01':'Maximum')<br />
C<br />
*<br />
EVAL %setatr('window':'SLIDER01':'Maximum')=100<br />
Ejemplo de formato fijo<br />
Cambiar el valor máximo de un graduador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SLIDER01' GETATR 'MAXIMUM' OldMax 3 0<br />
C 'SLIDER01' SETATR 100 'MAXIMUM'<br />
*<br />
280 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Method<br />
Especifica el nombre del método ActiveX que se ha de invocar, junto con los<br />
valores que se han de pasar al método. Los componentes ActiveX se controlan<br />
estableciendo sus propiedades y métodos.<br />
Cuando se activan ciertos controles ActiveX, como por ejemplo Netscape 4.x,<br />
puede abrirse un diálogo modal de aplicación y quedar oculto tras el Diseñador<br />
GUI o una aplicación VA<strong>RPG</strong>. Téngalo presente, ya que parecerá que la aplicación<br />
o el Diseñador GUI están bloqueados.<br />
La sintaxis del valor de tipo serie es:<br />
nombre_método, valor1, valor2, ...<br />
Restricción: Los únicos tipos de datos que pueden tener los parámetros de método<br />
y propiedad son numérico (es decir, entero y flotante) y serie (char*).<br />
Los tipos de datos Font, Color, UserDefined, PTR (puntero) no están<br />
soportados.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
ActiveX<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'AX1':'Method')='PN1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 'PN1' 'METHOD'<br />
*<br />
Ejemplo de Method<br />
En el ejemplo siguiente, se invoca el método DisplayText de un componente<br />
ActiveX y se le pasa un único valor. Si el método espera recibir un valor numérico,<br />
se le pasa el equivalente de tipo carácter.<br />
D dspText S Inz('DisplayText,New Text')<br />
*<br />
C 'MSCAL' Setatr dspText 'Method'<br />
Capítulo 2. Atributos de componente 281
MiniIcon<br />
Este atributo determina la forma de presentar los iconos del componente<br />
contenedor. Si se establece, los iconos aparecen en el componente contenedor en<br />
forma de miniiconos. Si no se establece, los iconos aparecen en su forma normal.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de MiniIcon puede ser uno de los siguientes:<br />
0 Los iconos se visualizan a tamaño normal<br />
1 Los iconos se visualizan en forma de miniiconos<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'Cont1': 'Miniicon') = 0<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'Cont1' SETATR 0 'MINIICON'<br />
*<br />
282 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Minimum<br />
Determina el valor mínimo que puede devolver un graduador o un selector cíclico.<br />
Este atributo sólo está permitido para selectores cíclicos numéricos.<br />
El valor mínimo es -32767.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Graduador Selector cíclico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Valor mínimo del componente<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL oldmin = %getatr('window': 'SLIDER01': 'Minimum')<br />
C<br />
*<br />
EVAL %setatr('window': 'part': 'Minimum') = 0<br />
Ejemplo de formato fijo<br />
Cambiar el valor mínimo de un graduador::<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SLIDER01' GETATR 'MINIMUM' OldMin 3 0<br />
C 'SLIDER01' SETATR 0 'MINIMUM'<br />
*<br />
Capítulo 2. Atributos de componente 283
Mode<br />
Determina si se reproduce o no el archivo de vídeo o GIF.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Control de animación<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de Mode puede ser uno de los siguientes:<br />
1 Empezar a reproducir el archivo<br />
2 Parar de reproducir el archivo<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'WIN1': 'Mode') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 1 'MODE'<br />
*<br />
284 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Month<br />
Indica el mes seleccionado actualmente. Si se establece, se actualizará la fecha<br />
seleccionada en el componente calendario para que los cambios queden reflejados.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El mes<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'Month') = 02<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 02 'Month'<br />
*<br />
Capítulo 2. Atributos de componente 285
MonthArrow<br />
Indica si las flechas de mes (< o >) o de año (>) están disponibles para que<br />
los usuarios puedan avanzar o retroceder por los meses o los años. Si no hay<br />
ninguna flecha, el usuario no tiene forma de cambiar el mes o el año visualizado<br />
actualmente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de MonthArrow puede ser uno de los siguientes:<br />
0 No se mostrarán las flechas<br />
1 Se mostrarán las flechas<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isshown = %getatr('win01': 'CAL1': 'MonthArrow')<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'MonthArrow') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'MONTHARROW' isshown<br />
*<br />
286 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
MonthIdx<br />
Permite que el usuario defina datos en una fecha que no se visualiza en la página<br />
actual del calendario.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Valor de índice<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'MonthIdx') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 2 'MonthIdx'<br />
*<br />
Capítulo 2. Atributos de componente 287
MonthLen<br />
Indica el formato de visualización del nombre del mes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de MonthLen puede ser uno de los siguientes:<br />
1 Nombre completo<br />
2 Nombre abreviado de tres caracteres<br />
3 Dos dígitos<br />
4 Dos dígitos, con un cero para los meses que sólo tienen un dígito<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'MonthLen') = 3<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'MONTHLEN' MonthLen 1 0<br />
*<br />
288 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
MouseIcon<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Especifica el nombre del archivo de iconos que se utilizará para la forma del<br />
puntero del ratón. Antes de utilizar este atributo, debe establecer el valor de<br />
MouseShape en 99.<br />
El archivo puede ser de cursor (.CUR) o de icono (.ICO o .ANI).<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'MouseIcon')=Myicon<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR MYICON 'MOUSEICON'<br />
*<br />
Capítulo 2. Atributos de componente 289
MouseShape<br />
Cambia la forma del puntero del ratón cuando el puntero está situado en el marco<br />
de la ventana del componente padre o de sus hijos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de MouseShape puede ser uno de los siguientes:<br />
0 Por omisión<br />
1 Icono de flecha<br />
2 Icono de reloj de arena<br />
3 Icono de ″stop″ o no permitido<br />
4 Flecha con reloj de arena (inicio de aplicación)<br />
5 Cursor en cruz<br />
6 Cursor en I<br />
7 Flecha arriba<br />
8 Flechas nordeste/sudoeste<br />
9 Flechas norte/sur<br />
10 Flechas noroeste/sudeste<br />
11 Flechas este/oeste<br />
12 Flechas para todos los puntos (norte/sur/este/oeste)<br />
13 Cursor con forma de mano<br />
99 Icono definido por el usuario según especifica el atributo<br />
MouseIcon. (Este valor sólo se utiliza en las aplicaciones de<br />
Windows.)<br />
290 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
El atributo MouseShape no es permanente; sólo se aplica al marco de la<br />
ventana. Si modifica la forma por omisión del puntero del ratón, debe<br />
restablecer este atributo en 0 para utilizar la forma por omisión del<br />
puntero.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('Win1': 'Win1': 'MouseShape') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'Win1' SETATR 2 'MOUSESHAPE'<br />
*<br />
Capítulo 2. Atributos de componente 291
MsgData<br />
Especifica el texto de sustitución para las variables que aparezcan en el texto del<br />
mensaje. Si hay varias variables, utilice un espacio para delimitar cada texto de<br />
sustitución. Utilice el carácter de subrayado ( _ ) para incluir espacios en blanco<br />
en el texto de sustitución. Por ejemplo, para utilizar ″A BC″ y ″CustNo″ en las<br />
variables %1 y %2 de un mensaje respectivamente, especifique los datos del<br />
mensaje del modo siguiente:<br />
'A_B_C CustNo'<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
La serie de sustitución de la variable de mensaje<br />
Ejemplo de formato libre<br />
Obtener el texto del mensaje 0001 y utilizar CustNo para la sustitución:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*Component':'*Component':'MsgID')=0001<br />
C EVAL %setatr('*Component':'*Component':'MsgData')=CustNo<br />
C EVAL text = %getatr('*Component':'*Component':'MsgText')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR 0001 'MSGID'<br />
C '*COMPONENT' SETATR CustNo 'MSGDATA'<br />
C<br />
*<br />
'*COMPONENT' GETATR 'MSGTEXT' text<br />
292 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
MsgFile<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Especifica el archivo de mensajes por omisión que se utilizará cuando no se<br />
encuentre un identificador de mensaje en el archivo de mensajes del componente<br />
lógico.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Nombre completo del archivo de mensajes por omisión (archivo.txm). Se<br />
utiliza la vía de acceso actual para la búsqueda de archivos.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*Component':'*Component':'MsgFile')<br />
C = Fn<br />
C EVAL Mf = %getatr('*Component':'*Component':<br />
C<br />
*<br />
'MsgFile')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'*COMPONENT' SETATR Fn 'MSGFILE'<br />
C<br />
*<br />
'*COMPONENT' GETATR 'MSGFILE' Mf<br />
Capítulo 2. Atributos de componente 293
MsgID<br />
Especifica el número de mensaje en el archivo de mensajes del componente lógico.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El número de mensaje<br />
Ejemplo de formato libre<br />
Obtener el texto del mensaje 0001 y utilizar CusNo para la sustitución:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*Component':'*Component':'MsgID')=0001<br />
C EVAL %setatr('*Component':'*Component':'MsgData')=CusNo<br />
C EVAL text=%getatr('*Component':'*Component':'MsgText')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR 0001 'MSGID'<br />
C '*COMPONENT' SETATR CusNo 'MSGDATA'<br />
C<br />
*<br />
'*COMPONENT' GETATR 'MSGTEXT' text<br />
294 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
MsgSubText<br />
Define el texto de sustitución del mensaje para un componente subarchivo de<br />
mensajes. Este atributo debe estar establecido antes de añadir un mensaje a un<br />
componente subarchivo de mensajes mediante el atributo AddMsgID o<br />
AddMsgText. Se hace referencia al texto de sustitución de mensaje cuando un<br />
mensaje tiene variables de sustitución en el texto del mensaje. Las variables de<br />
sustitución de mensaje se identifican mediante un símbolo ’%’ seguido por un<br />
valor numérico. Cada variable de sustitución de mensaje se sustituye por la<br />
palabra correspondiente delimitada por blancos en el atributo MsgSubText antes<br />
de añadir el mensaje al componente subarchivo de mensajes. La serie de<br />
sustitución del mensaje permanece vigente hasta que se establece otro atributo<br />
MsgSubText.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo de<br />
mensajes<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El texto de sustitución de mensaje<br />
Ejemplo de formato libre<br />
Si el mensaje 1000 fuera:<br />
Pulse %1 para continuar, %2 para cancelar<br />
se visualizaría de este modo:<br />
Pulse Yes para continuar, No para cancelar<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'MSG1':'MsgSubText')='Yes No'<br />
C EVAL %setatr('win01':'MSG1':'AddMsgID')=1000<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MSG1' SETATR 'Yes No' 'MSGSUBTEXT'<br />
C<br />
*<br />
'MSG1' SETATR 1000 'ADDMSGID'<br />
Capítulo 2. Atributos de componente 295
MsgText<br />
Devuelve el texto del mensaje del archivo de mensajes del componente lógico para<br />
el identificador de mensaje especificado.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
Obtener el texto del mensaje 0001:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*Component':'*Component':'MsgID')=0001<br />
C EVAL text=%getatr('*Component':'*Component':'MsgText')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR 'MSGID' 0001<br />
C<br />
*<br />
'*COMPONENT' GETATR 'MSGTEXT' text<br />
296 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Multiplier<br />
Determina la cantidad de intervalos del temporizador que deben transcurrir antes<br />
de que el temporizador cause un evento Tick.<br />
El valor máximo del multiplicador es 65535.<br />
El valor mínimo del multiplicador es 1.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Temporizador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor del multiplicador<br />
Ejemplo de formato libre<br />
Si se ha establecido el atributo Interval en 1000 milisegundos, el<br />
temporizador generará un evento Tick cada tres segundos:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'TIMER01': 'Multiplier') = 3<br />
*<br />
Ejemplo de formato fijo<br />
Cambiar el atributo Multiplier de un temporizador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'TIMER01' SETATR 3 'MULTIPLIER'<br />
*<br />
Capítulo 2. Atributos de componente 297
MultSelect<br />
Determina si puede haber más de un elemento seleccionado en la parte de lista de<br />
un componente. Cuando no se ha establecido este atributo, al seleccionar un<br />
elemento se deselecciona cualquier elemento seleccionado actualmente.<br />
Este atributo debe estar establecido para que el recuadro de lista permita la<br />
selección ampliada proporcionada por el atributo ExtSelect.<br />
El atributo MultSelect no tiene ningún efecto en el atributo ExtSelect. El atributo<br />
ExtSelect prevalece sobre los valores para MultSelect o para una única selección.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de lista Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El estado de selección múltiple puede ser uno de los siguientes:<br />
0 Sólo se puede seleccionar un elemento<br />
1 Se pueden seleccionar varios elementos<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
Ejemplo de formato fijo<br />
EVAL rc = %getatr('win01': 'LB1': 'MultSelect')<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'LB1' GETATR 'MULTSELECT' rc 1 0<br />
298 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Name<br />
Devuelve el nombre del componente lógico.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
Obtener el nombre del componente lógico:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL appname=%getatr('*Component':'*Component':'Name')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'NAME' appname<br />
*<br />
Capítulo 2. Atributos de componente 299
NbrOfImage<br />
*Restricción: Este atributo es sólo de Java.<br />
Establece el número de imágenes que se reproducen en una secuencia de<br />
animación GIF. Utilice este atributo junto con los atributos FileName y Mode.<br />
Por ejemplo, para reproducir un archivo base Archivo.GIF como una secuencia de<br />
10 imágenes, debe establecer FileName en Archivo.GIF, NbrOfImage en 10 y<br />
Mode en 1. También, puede reproducir varias imágenes GIF distintas, como<br />
Archivo1.GIF, Archivo2.GIF, ... Archivo10.GIF.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Control de animación<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El número de imágenes que se reproducen.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'NbrOfImage')=10<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 1 'NBROFIMAGE'<br />
*<br />
300 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
NbrOfLines<br />
Devuelve el número de líneas del campo de edición de múltiples líneas. Si está<br />
vacío, se devuelve el valor cero.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL NumL = %getatr('win01': 'MLE1': 'NbrOfLines')<br />
*<br />
Ejemplo de formato fijo<br />
Obtener el número de líneas de un campo de edición de múltiples líneas:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'NBROFLINES' NumL 2 0<br />
*<br />
Capítulo 2. Atributos de componente 301
NbrOfSel<br />
Devuelve el número de elementos seleccionados en la parte de lista de un<br />
componente.<br />
Si no hay ningún elemento seleccionado actualmente, se devuelve el valor cero.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de lista Subarchivo de<br />
mensajes<br />
Códigos de operación<br />
Subarchivo<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
Obtener el número de elementos seleccionados en un recuadro de lista:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL num=%getatr('win01':'LB1':'NbrOfSel')<br />
C num IFEQ *ZERO<br />
C EVAL %setatr('win01':'MSG1':'AddMsgText')='None'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'NBROFSEL' NbrSelected 2 0<br />
*<br />
302 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
NextLine<br />
Si este atributo se establece en 1, el graduador de la barra de desplazamiento se<br />
traslada a una posición que representa la siguiente línea dentro de una lista de<br />
elementos. El movimiento descrito por el graduador es relativo al atributo Range<br />
establecido para el componente barra de desplazamiento.<br />
Por ejemplo, supongamos que tiene un componente subarchivo y desea indicar<br />
dónde se halla un usuario dentro de un conjunto de registros cuando se pulsa una<br />
tecla de movimiento del cursor o de mandato. El componente barra de<br />
desplazamiento conectado a un subarchivo indica únicamente dónde se encuentra<br />
el usuario tomando como base el número de registros que hay actualmente en el<br />
subarchivo. Al capturar el evento VKeyPress, se puede establecer el atributo de<br />
graduador pertinente. Cuando el graduador queda situado en su nueva posición,<br />
se señala un evento Scroll y se actualiza el atributo del evento %Position.<br />
El atributo PageSize determina el tamaño de página visible de los elementos<br />
visualizados. El atributo Range determina el límite superior correspondiente al<br />
número de elementos por los que se pasará al realizar el desplazamiento.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Códigos de operación<br />
Barra de<br />
desplazamiento<br />
vertical<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'VSC1':'NextLine')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'VSC1' SETATR 1 'NEXTLINE'<br />
*<br />
Capítulo 2. Atributos de componente 303
NextPage<br />
Si este atributo se establece en 1, el graduador de la barra de desplazamiento se<br />
traslada a una posición que representa la siguiente página dentro de una lista de<br />
elementos. El movimiento descrito por el graduador es relativo al atributo Range<br />
establecido para el componente barra de desplazamiento.<br />
Por ejemplo, supongamos que tiene un componente subarchivo y desea indicar<br />
dónde se halla un usuario dentro de un conjunto de registros cuando se pulsa una<br />
tecla de movimiento del cursor o de mandato. El componente barra de<br />
desplazamiento conectado a un subarchivo indica únicamente dónde se encuentra<br />
el usuario tomando como base el número de registros que hay actualmente en el<br />
subarchivo. Al capturar el evento VKeyPress, se puede establecer el atributo de<br />
graduador pertinente. Cuando el graduador queda situado en su nueva posición,<br />
se señala un evento Scroll y se actualiza el atributo del evento %Position.<br />
El atributo PageSize determina el tamaño de página visible de los elementos<br />
visualizados. El atributo Range determina el límite superior correspondiente al<br />
número de elementos por los que se pasará al realizar el desplazamiento.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Códigos de operación<br />
Barra de<br />
desplazamiento<br />
vertical<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'VSC1':'NextPage')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'VSC1' SETATR 1 'NEXTPAGE'<br />
*<br />
304 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
NotSrcEvt<br />
Utilice este atributo, junto con los atributos NotSrcPart y NotSrcWin, para que el<br />
componente referencia a componente lógico supervise la aparición de un evento<br />
específico en un componente determinado de una ventana en particular de otro<br />
componente lógico. Este atributo se utiliza para identificar el evento que desea.<br />
Utilice NotSrcPart y NotSrcWin para especificar el componente y la ventana<br />
determinados que desea supervisar para la aparición de ese evento.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL event = %getatr('win01': 'CR1': 'NotSrcEvt')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CR1' GETATR 'NOTSRCEVT' event<br />
*<br />
Capítulo 2. Atributos de componente 305
NotSrcPart<br />
Utilice este atributo, junto con los atributos NotSrcEvt y NotSrcWin, para que el<br />
componente referencia a componente lógico supervise la aparición de un evento<br />
específico en un componente determinado de una ventana en particular de otro<br />
componente lógico. Este atributo se utiliza para identificar el componente que<br />
desea. Utilice NotSrcEvt y NotSrcWin para especificar el evento que desea<br />
supervisar para ese componente y la ventana en la que se encuentra el<br />
componente.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL PartN = %getatr('win1': 'CR1': 'NotSrPart')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CR1' GETATR 'NOTSRCPART' PartN<br />
*<br />
306 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
NotSrcWin<br />
Utilice este atributo, junto con los atributos NotSrcEvt y NotSrcPart, para que el<br />
componente referencia a componente lógico supervise la aparición de un evento<br />
específico en un componente determinado de una ventana en particular de otro<br />
componente lógico. Este atributo se utiliza para identificar la ventana que desea.<br />
Utilice NotSrcPart y NotSrcEvt para especificar el componente y el evento que<br />
desea supervisar en dicha ventana.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL WinNam = %getatr('win1': 'CR1': 'NotSrcWin')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CR1' GETATR 'NotSrcWin' WinNam<br />
*<br />
Capítulo 2. Atributos de componente 307
OCXProp<br />
Determina el nombre de la propiedad. Este nombre se utiliza para determinar el<br />
valor de propiedad con el atributo OCXValue.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
ActiveX<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'AX1':'OCXProp')='PN1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 'PN1' 'OCXPROP'<br />
*<br />
308 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
OCXValue<br />
Determina el valor de la propiedad según proporciona el atributo OCXProp.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
ActiveX<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'AX1':'OCXValue')='VL1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 'VL1' 'OCXVALUE'<br />
*<br />
Capítulo 2. Atributos de componente 309
OpenEdit<br />
Determina si se puede editar un campo de entrada de un registro de subarchivo.<br />
Antes de establecer este atributo, debe establecer los atributos ColNumber e Index.<br />
El valor devuelto por el atributo OpenEdit indica si hay algún campo del<br />
subarchivo abierto en este momento para su edición. Por consiguiente, no es<br />
necesario establecer primero los atributos ColNumber e Index antes de obtener<br />
este atributo.<br />
Cuando el atributo OpenEdit está establecido en 0, se cierran todos los campos<br />
abiertos actualmente para edición. Los atributos ColNumber e Index se pasan por<br />
alto.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
OpenEdit puede tener uno de los siguientes valores:<br />
0 El campo no se puede editar<br />
1 El campo se puede editar<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isopen = %getatr('win01': 'SF1': 'OpenEdit')<br />
C<br />
*<br />
EVAL %setatr('win01': 'SF1': 'OpenEdit') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SF1' GETATR 'OPENEDIT' isopen<br />
*<br />
310 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
OS<br />
Devuelve el nombre del sistema operativo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Sistema operativo WINDOWS: Windows NT, Windows 95 o Windows 98<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ostring=%getatr('*Component':'*Component':'Os')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'OS' ostring<br />
*<br />
Capítulo 2. Atributos de componente 311
OutlineRcl<br />
Indica si hay o no un rectángulo bordeando la fecha YearIdx/MonthIdx/DayIdx.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
OutlineRcl puede tener uno de los siguientes valores:<br />
0 No hay ningún rectángulo<br />
1 Hay un rectángulo<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'OutlineRcl') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1 'OUTLINERCL'<br />
*<br />
312 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PageNumber<br />
Determina qué número de página está seleccionado actualmente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Cuaderno<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El número de página seleccionado actualmente<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'NB1': 'PageNumber') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'NB1' SETATR 1 'PAGENUMBER'<br />
*<br />
Capítulo 2. Atributos de componente 313
PageSize<br />
Para un componente subarchivo, indica el número de filas de datos visibles. Este<br />
atributo es útil si desea efectuar el proceso página a página.<br />
Para un componente barra de desplazamiento horizontal o vertical, determina el<br />
tamaño de página visible. El valor de PageSize no puede sobrepasar el valor de<br />
Range.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Barra de<br />
desplazamiento<br />
vertical<br />
Subarchivo*<br />
* Restricción: Este atributo sólo se puede obtener en tiempo de ejecución<br />
para el componente subarchivo.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Para un componente barra de desplazamiento horizontal o vertical, el valor<br />
de PageSize puede estar entre 1 y 32.767. No puede sobrepasar el valor de<br />
Range.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL PS = %getatr('win01':'SFL1':'PageSize')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' GETATR 'PAGESIZE' PS<br />
*<br />
314 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Panel<br />
Nota: Este atributo sólo se utiliza en Windows NT/95/98.<br />
En el componente imagen, panel determina si el componente tiene un panel de<br />
ampliación asociado. El panel de ampliación contiene dos controles que permiten<br />
la manipulación de la imagen:<br />
Recuadro de selección Ajustar escala<br />
Cuando este recuadro de selección no está marcado, la imagen se ajusta<br />
proporcionalmente para encajar en el componente imagen. Cuando está<br />
marcado, se habilita el graduador de ampliación.<br />
Graduador de ampliación<br />
Cuando está habilitado, este graduador ajusta la ampliación de la imagen entre<br />
un 25% y un 200% de su tamaño original.<br />
En el componente medios, panel se utiliza para mostrar un panel de medios para<br />
reproducir archivos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Imagen Medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Capítulo 2. Atributos de componente 315
Valor permitido<br />
Uno de los siguientes:<br />
0 No se conecta el panel de ampliación o se oculta el panel de<br />
reproducción.<br />
1 Se conecta el panel de ampliación o se muestra el panel de<br />
reproducción.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL oldval = %getatr('window': 'MMP1': 'Panel')<br />
C<br />
*<br />
EVAL %setatr('window': 'MMP1': 'Panel') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MMP1' GETATR 'PANEL' OldVal 1 0<br />
C<br />
*<br />
'MMP1' SETATR 1 'PANEL'<br />
316 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PanelItem<br />
Devuelve un valor que indica el último botón que se ha cambiado en un panel de<br />
medios. Un botón se puede cambiar pulsando sobre el mismo con el ratón o<br />
estableciendo el atributo PanelMode. Puede establecer la verificación de este<br />
atributo cuando el usuario haya pulsado uno de los botones del panel de medios.<br />
De este modo se producirá un evento Press. A continuación puede utilizar el<br />
atributo PanelItem de la subrutina de acción Press para determinar la función que<br />
debe llevarse a cabo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Panel de medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Estado del último botón del panel de medios que se ha pulsado:<br />
0 No se ha pulsado ningún botón<br />
1 Pause (Pausa)<br />
2 Play (Reproducir)<br />
3 Grabar<br />
4 Stop (Parar)<br />
5 Pista siguiente<br />
6 Pista anterior<br />
7 Índice siguiente<br />
8 Índice anterior<br />
9 Volumen<br />
10 Posición<br />
Capítulo 2. Atributos de componente 317
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL button = %getatr('win01': 'MMP1': 'PanelItem')<br />
*<br />
C button CASEQ 2 PLAY<br />
C button CASEQ 3 RECORD<br />
C ...<br />
C ENDCS<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'MMP1' GETATR 'PANELITEM' button 2 0<br />
C button CASEQ 2 PLAY<br />
C button CASEQ 3 RECORD<br />
C ...<br />
C<br />
*<br />
ENDCS<br />
318 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PanelMode<br />
Establece la modalidad operativa para el componente panel de medios.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Panel de medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
La modalidad operativa de un componente panel de medios puede ser:<br />
1 Pause (Pausa)<br />
2 Play (Reproducir)<br />
3 Grabar<br />
4 Stop (Parar)<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'MMP1': 'PanelMode') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MMP1' SETATR 1 'PANELMODE'<br />
*<br />
Capítulo 2. Atributos de componente 319
Parent<br />
Establece el componente padre cuya lista de hijos ha de recuperarse mediante el<br />
atributo PartList. Se devolverá la lista de hijos inmediatos. Para obtener la lista de<br />
ventanas de un componente lógico, establezca el atributo Parent con el nombre<br />
reservado *component.<br />
Nota: Este atributo debe establecerse antes de utilizar PartCount o PartList.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El formato del nombre de componente padre es:<br />
PARENTNAME|PARTNAME<br />
320 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes<br />
ParentName es el nombre del componente ventana propietario de<br />
PartName. Si desea obtener una lista de los componentes de una ventana,<br />
utilice el nombre del componente lienzo como nombre del componente<br />
padre.
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'Parent')<br />
C = 'WIN1|CANVS1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 'WIN1|CANVS1' 'PARENT'<br />
*<br />
Si desea obtener un nombre de lienzo desde un componente ventana padre, deberá<br />
especificar dos veces el nombre de la ventana. El siguiente ejemplo de código<br />
muestra cómo hacerlo. (La variable WinName contiene el nombre de la ventana<br />
padre).<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
* Establecer la ventana como el padre; entrar dos veces el<br />
nombre de la ventana.<br />
C EVAL %setatr('*component':'*component':'Parent')<br />
C = WinName + '|' + WinName<br />
*<br />
* Obtener PartList, que ahora tiene el nombre de la ventana, y<br />
asignarlo a la variable Canvas.<br />
C EVAL<br />
Canvas=%getatr('*component':'*component':'PartList')<br />
Consulte la descripción de PartList para obtener información sobre los valores<br />
devueltos por este atributo.<br />
Capítulo 2. Atributos de componente 321
ParentId<br />
Devuelve el ID del registro padre de un registro de un contenedor. Antes de<br />
utilizar este atributo, establezca el atributo RecordID en el ID del registro cuyo ID<br />
de padre desea determinar.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
En el ejemplo siguiente, se supone que se ha seleccionado un registro. Se<br />
determinará cuál es el ID del registro padre del registro seleccionado.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
CSRN01Factor1+++++++Opcode(E)+Extended-factor2+++++++++++++++++++++++++----<br />
* Establecer el ID del registro seleccionado<br />
C EVAL %setatr('Main':'CT1':'RecordID')=<br />
C %getatr('Main':'CT1':'FirstSel')<br />
* Obtener el ID del registro padre del registro seleccionado<br />
C EVAL Parent=%getatr('Main':'CT1':'ParentId')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CT1' GETATR 'FIRSTSEL' ID 4 0<br />
C 'CT1' SETATR ID 'RECORDID'<br />
C<br />
*<br />
'CT1' GETATR 'PARENTID' PARENT 4 0<br />
322 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
ParentList<br />
Devuelve la lista, delimitada con blancos, de los ID de padre del registro actual.<br />
Antes de utilizar este atributo, establezca el atributo RecordID en el ID del registro<br />
actual.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
En el ejemplo siguiente, se supone que se ha seleccionado un registro. Se<br />
determinará cuál es el ID de registro del registro seleccionado.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
CSRN01Factor1+++++++Opcode(E)+Extended-factor2+++++++++++++++++++++++++----<br />
* Establecer el ID del registro seleccionado<br />
C EVAL %setatr('Main':'CT1':'RecordID')=<br />
C %getatr('Main':'CT1':'FirstSel')<br />
* Obtener la lista de los ID de padre del registro seleccionado<br />
C EVAL ParentL=%getatr('Main':'CT1':'ParentList')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CT1' GETATR 'FIRSTSEL' ID 4 0<br />
C 'CT1' SETATR ID 'RECORDID'<br />
C<br />
*<br />
'CT1' GETATR 'PARENTLIST' PARENTL 4 0<br />
Capítulo 2. Atributos de componente 323
ParentName<br />
Devuelve el nombre del componente que contiene el componente al que el<br />
parámetro part hace referencia. En el caso de los componentes que están en una<br />
ventana, se devuelve el nombre de ésta. Cuando utilice este atributo para un<br />
componente ventana, se devolverá el nombre del componente ventana.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Todos los componentes excepto el componente *component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL PName = %getatr('win01': 'EF1': 'ParentName')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'PARENTNAME' PName 1 0<br />
*<br />
324 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PartCount<br />
Devuelve el número de hijos del componente padre establecido por el atributo<br />
Parent.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Componente lógico Bean Java<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El número de hijos del componente padre especificado.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Numchild=%getatr('*component':'*component':<br />
C 'PartCount')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'PARTCOUNT' Numchild<br />
*<br />
Capítulo 2. Atributos de componente 325
PartList<br />
Devuelve una lista de los componentes hijo del componente padre que ha<br />
establecido el atributo Parent.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
El formato de la serie es una serie continua de nombres de componente. El<br />
nombre de cada uno de los componentes es una serie fija de 10 caracteres<br />
de longitud. Si una parte del nombre de componente tiene menos de 10<br />
caracteres, el nombre se rellena por la derecha con espacios en blanco.<br />
FRAMEbbbbbCANVASbbbbENTRYFIELD<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL list = %getatr('*component': '*component':<br />
C<br />
*<br />
'PartList')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'PARTLIST' list<br />
*<br />
326 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PartName<br />
Devuelve el nombre del componente. Es el nombre que se asignó al componente<br />
cuando se creó por primera vez utilizando el valor del cuaderno.<br />
La longitud del valor del nombre es de 10 caracteres. Se devolverá en el campo de<br />
resultado justificado por la izquierda. Si el campo de resultado tiene menos de 10<br />
caracteres, el valor del nombre se truncará. Si tiene más de 10 caracteres, el campo<br />
se rellena con espacios en blanco.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Todos los componentes excepto el componente *component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ctlname = %getatr('win01': 'MLE1': 'PartName')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'PARTNAME' ctlname 10<br />
*<br />
Capítulo 2. Atributos de componente 327
PartType<br />
Devuelve el tipo del componente. El valor devuelto para un componente VA<strong>RPG</strong><br />
tiene como prefijo los caracteres FVDES. Por ejemplo, el valor devuelto para un<br />
componente campo de entrada es FVDESEntryField.<br />
Nota: Para un componente referencia a componente lógico, el valor devuelto tiene<br />
como prefijo los caracteres FVDESV.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Todos los componentes excepto el componente *component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Type = %getatr('win01': 'MLE1': 'PartType')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'PARTTYPE' Type 50<br />
*<br />
328 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Paste<br />
Pega el texto del portapapeles en la posición del cursor. Si hay un texto<br />
seleccionado, se sustituirá por el texto del portapapeles.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'Paste') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 1 'paste'<br />
*<br />
Capítulo 2. Atributos de componente 329
PBRange<br />
Determina el rango superior de la barra de progreso. El valor por omisión es 100.<br />
Este valor puede representar el límite superior del proceso que el programa está<br />
supervisando. Por ejemplo, si el programa está subiendo 1.000 archivos, puede<br />
interesarle establecer el rango superior en 1.000 para este proceso.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de progreso Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
* Establecer el rango de una barra de progreso conectada a una ventana<br />
C EVAL %setatr('win01':'WIN1':'PBRange')=1000<br />
* Establecer el rango de un componente barra de progreso<br />
C EVAL %setatr('win01':'PBar1':'PBRange')=1000<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
* Establecer el rango de una barra de progreso conectada a una ventana<br />
C 'WIN1' SETATR 1000 'PBRANGE'<br />
* Establecer el rango de un componente barra de progreso<br />
C 'PBAR1' SETATR 1000 'PBRANGE'<br />
330 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PBSetPos<br />
Mueve el indicador de barra de progreso a la posición absoluta especificada. Este<br />
valor depende de cómo se ha establecido el valor del atributo PBRange.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de progreso Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'PBSetPos')=50<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 50 'PBSETPOS'<br />
*<br />
Capítulo 2. Atributos de componente 331
PBStep<br />
Establezca este atributo en 1 para mover el indicador de barra de progreso el<br />
número de unidades de pasos definido en el valor de PBStepSize.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de progreso Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'PBStep')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 1 'PBSTEP'<br />
*<br />
332 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PBStepSize<br />
Determina la posición máxima a la que se mueve el indicador de barra de progreso<br />
cuando el atributo PBStep está activado. El valor por omisión es 10.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de progreso Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'PBStepSize')=10<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 10 'PBSTEPSIZE'<br />
*<br />
Capítulo 2. Atributos de componente 333
Platform<br />
Devuelve el nombre de la plataforma en la que se está ejecutando la aplicación.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Uno de los siguientes:<br />
WINDOWS<br />
Windows<br />
JAVA Java<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL app1=%getatr('*Component':'*Component':'Platform')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' GETATR 'PLATFORM' APP1<br />
*<br />
334 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PlugCmd<br />
*Restricciones:<br />
1. Este atributo no está soportado en las aplicaciones Java.<br />
2. Este atributo sólo se aplica a los conectores escritos en <strong>VisualAge</strong> <strong>RPG</strong>.<br />
Transfiere un mandato al componente lógico Conector del Diseñador GUI. Los<br />
atributos PlugDLL y PlugID deben estar establecidos antes de utilizar PlugCmd.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El mandato de conector<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component': '*component': 'PlugCmd')<br />
C = cmdstring<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR cmdstring 'PLUGCMD'<br />
*<br />
Capítulo 2. Atributos de componente 335
PlugDLL<br />
*Restricciones:<br />
1. Este atributo no está soportado en las aplicaciones Java.<br />
2. Este atributo sólo se aplica a los conectores escritos en <strong>VisualAge</strong> <strong>RPG</strong>.<br />
Establece el nombre de la DLL del conector. Los atributos PlugDLL y PlugID<br />
deben estar establecidos antes de utilizar PlugCmd.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Nombre de la DLL del conector<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component': '*component': 'PlugDLL')<br />
C = PlugDLL<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR DLLname 'PLUGDLL'<br />
*<br />
336 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PlugID<br />
*Restricciones:<br />
1. Este atributo no está soportado en las aplicaciones Java.<br />
2. Este atributo sólo se aplica a los conectores escritos en <strong>VisualAge</strong> <strong>RPG</strong>.<br />
Establece el ID del Diseñador GUI que se pasa al conector. Los atributos PlugDLL<br />
y PlugID deben estar establecidos antes de utilizar PlugCmd.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
ID del Diseñador GUI<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component': '*component': 'PlugID')<br />
C = idname<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR idname 'PLUGID'<br />
*<br />
Capítulo 2. Atributos de componente 337
PlugRC<br />
*Restricciones:<br />
1. Este atributo no está soportado en las aplicaciones Java.<br />
2. Este atributo sólo se aplica a los conectores escritos en <strong>VisualAge</strong> <strong>RPG</strong>.<br />
Obtiene el código de retorno del último mandato del conector.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL code = %getatr('*component': '*component':<br />
C<br />
*<br />
'PlugRC')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'PLUGRC' code 2 0<br />
*<br />
338 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PlugResult<br />
*Restricciones:<br />
1. Este atributo no está soportado en las aplicaciones Java.<br />
2. Este atributo sólo se aplica a los conectores escritos en <strong>VisualAge</strong> <strong>RPG</strong>.<br />
Obtiene la serie del resultado del último mandato del conector.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Result = %getatr('*component': '*component':<br />
C<br />
*<br />
'PlugResult')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'PLUGRESULT' Result<br />
*<br />
Capítulo 2. Atributos de componente 339
Poke<br />
Envía datos a la aplicación del servidor. Para transferir datos a una aplicación del<br />
servidor, debe haberse iniciado satisfactoriamente una conversación DDE para el<br />
componente DDE. Asimismo, debe haberse establecido el atributo DDEItem para<br />
indicar el elemento del servidor que recibirá los datos transferidos.<br />
Cuando la aplicación del servidor procese la solicitud Poke, responderá con un<br />
evento PokeAck. Debe comprobar el atributo %PokeAck en la subrutina de acción<br />
PokeAck para determinar si la operación Poke se ha completado de manera<br />
satisfactoria o no.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'DDEItem') = 'A1'<br />
C<br />
*<br />
EVAL %setatr('win01': 'DDE1': 'Poke') = '456.78'<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR '123' 'POKE'<br />
*<br />
340 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Position<br />
El valor devuelto para este atributo depende del tipo del componente.<br />
En el caso de un componente medios, devolverá la posición actual del archivo de<br />
audio. Este valor se proporciona en milisegundos. Si aún no se ha procesado el<br />
archivo de audio, se devolverá el valor cero.<br />
Para un componente panel de medios, devolverá la posición del graduador. Este<br />
valor se sitúa entre 0 y 100.<br />
Para un componente barra de desplazamiento horizontal o vertical, este atributo<br />
devolverá la posición del recuadro de desplazamiento en función del valor del<br />
atributo Range.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Códigos de operación<br />
Medios Panel de medios Barra de<br />
desplazamiento<br />
vertical<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Para un componente panel de medios, el valor de Position, entre 0 y 100,<br />
representa un porcentaje. Para un componente barra de desplazamiento<br />
horizontal o vertical, se trata de un valor absoluto basado en el valor de<br />
Range.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldpos = %getatr('win01': 'MMP1': 'Position')<br />
*<br />
C EVAL %setatr('win01': 'MMP1': 'Position') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'MMP1' GETATR 'POSITION' OldPos 3 0<br />
C<br />
*<br />
'MMP1' SETATR 5 'POSITION'<br />
Capítulo 2. Atributos de componente 341
PrevLine<br />
Si este atributo se establece en 1, el graduador de la barra de desplazamiento se<br />
traslada a una posición que representa la línea anterior dentro de una lista de<br />
elementos. El movimiento descrito por el graduador es relativo al atributo Range<br />
establecido para el componente barra de desplazamiento.<br />
Por ejemplo, supongamos que tiene un componente subarchivo y desea indicar<br />
dónde se halla un usuario dentro de un conjunto de registros cuando se pulsa una<br />
tecla de movimiento del cursor o de mandato. El componente barra de<br />
desplazamiento conectado a un subarchivo indica únicamente dónde se encuentra<br />
el usuario tomando como base el número de registros que hay actualmente en el<br />
subarchivo. Al capturar el evento VKeyPress, se puede establecer el atributo de<br />
graduador pertinente. Cuando el graduador queda situado en su nueva posición,<br />
se señala un evento Scroll y se actualiza el atributo del evento %Position.<br />
El atributo PageSize determina el tamaño de página visible de los elementos<br />
visualizados. El atributo Range determina el límite superior correspondiente al<br />
número de elementos por los que se pasará al realizar el desplazamiento.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Códigos de operación<br />
Barra de<br />
desplazamiento<br />
vertical<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'VSC1':'PrevLine')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'VSC1' SETATR 1 'PREVLINE'<br />
*<br />
342 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PrevPage<br />
Si este atributo se establece en 1, el graduador de la barra de desplazamiento se<br />
traslada a una posición que representa la página anterior dentro de una lista de<br />
elementos. El movimiento descrito por el graduador es relativo al atributo Range<br />
establecido para el componente barra de desplazamiento.<br />
Por ejemplo, supongamos que tiene un componente subarchivo y desea indicar<br />
dónde se halla un usuario dentro de un conjunto de registros cuando se pulsa una<br />
tecla de movimiento del cursor o de mandato. El componente barra de<br />
desplazamiento conectado a un subarchivo indica únicamente dónde se encuentra<br />
el usuario tomando como base el número de registros que hay actualmente en el<br />
subarchivo. Al capturar el evento VKeyPress, se puede establecer el atributo de<br />
graduador pertinente. Cuando el graduador queda situado en su nueva posición,<br />
se señala un evento Scroll y se actualiza el atributo del evento %Position.<br />
El atributo PageSize determina el tamaño de página visible de los elementos<br />
visualizados. El atributo Range determina el límite superior correspondiente al<br />
número de elementos por los que se pasará al realizar el desplazamiento.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Códigos de operación<br />
Barra de<br />
desplazamiento<br />
vertical<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'VSC1':'PrevPage')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'VSC1' SETATR 1 'PREVPAGE'<br />
*<br />
Capítulo 2. Atributos de componente 343
Print<br />
Permite que se imprima la imagen o el área de cliente de la ventana. El valor de<br />
tipo serie representa el nombre y el título del trabajo. Si se establecer este atributo,<br />
se visualizará el diálogo de impresión de Windows a fin de que el usuario pueda<br />
elegir el tipo de impresora.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Imagen Ventana Ventana con lienzo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ima2':'Print')='Image2'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN01' SETATR 'IMAGE2' 'PRINT'<br />
*<br />
344 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Printer<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Devuelve el nombre de impresora seleccionado en el diálogo de impresora. El<br />
diálogo de impresora del sistema Windows se visualiza estableciendo el atributo<br />
SelPrinter.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL prtname = %getatr('*component': '*component':<br />
C<br />
*<br />
'Printer')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'PRINTER' prtname<br />
*<br />
Capítulo 2. Atributos de componente 345
ProgresBar<br />
Añade o elimina una barra de progreso simple en una ventana como una<br />
extensión. Si hay una ventana de estado, la barra de progreso se colocará en la<br />
posición opuesta de la ventana. Utilice el componente barra de progreso si necesita<br />
una barra de progreso más variada.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de ProgresBar puede ser uno de los siguientes:<br />
1 Crear una barra de progreso<br />
0 Eliminar una barra de progreso<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01':'WIN1':'ProgresBar')=1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 1 'PROGRESBAR'<br />
*<br />
346 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Range<br />
Determina el límite superior del rango de los elementos por los que se desplaza.<br />
Este valor puede representar el número de elementos que se visualizan en una<br />
lista. Por ejemplo, si el programa visualiza una lista de 100 archivos, puede<br />
interesarle establecer el rango superior en 100.<br />
El atributo PageSize determina el tamaño de página visible de los elementos<br />
visualizados.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Códigos de operación<br />
Barra de<br />
desplazamiento<br />
vertical<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Range puede tener un valor entre 1 y 32.767.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'HScroll1':'Range')=100<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'HSCROLL1' SETATR 100 'RANGE'<br />
*<br />
Capítulo 2. Atributos de componente 347
ReadOnly<br />
Determina si la parte del campo de entrada de un componente es de sólo lectura.<br />
Cuando se ha establecido para sólo lectura, no se permite escribir en el campo de<br />
entrada.<br />
Cuando este atributo se aplica al componente lienzo, todos los campos de entrada<br />
del lienzo heredarán el valor del atributo ReadOnly.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Lienzo Recuadro de<br />
combinación<br />
Edición de múltiples Selector cíclico<br />
líneas<br />
Códigos de operación<br />
Contenedor Campo de entrada<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Se puede establecer utilizando el cuaderno de propiedades en el<br />
Diseñador GUI, excepto en el caso de un componente contenedor.<br />
En el caso de un componente recuadro de combinación, seleccione<br />
un tipo de Lista desplegable para el estilo del recuadro de<br />
combinación. Para otros componentes, seleccione el estilo Sólo<br />
lectura.<br />
Valor permitido<br />
El estado ReadOnly del campo puede ser:<br />
0 El campo de entrada no es de sólo lectura<br />
1 El campo de entrada es de sólo lectura<br />
348 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Ejemplo de formato libre<br />
Conmutar el estado de sólo lectura de un campo de entrada:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL rc = %getatr('win01': 'EF1': 'ReadOnly')<br />
C rc IFEQ 1<br />
C EVAL %setatr('win01': 'EF1': 'ReadOnly') = 0<br />
C ELSE<br />
C EVAL %setatr('win01':<br />
'EF1': 'ReadOnly') = 1<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'EF1' GETATR 'READONLY' rc 1 0<br />
C rc IFEQ 1<br />
C 'EF1' SETATR 0 'READONLY'<br />
C ELSE<br />
C 'EF1' SETATR 1 'READONLY'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 349
RecordID<br />
Establece la identificación de un registro de contenedor al que otros atributos<br />
hacen referencia. Por ejemplo, antes de utilizar el atributo GetRcdFld, debe<br />
establecer primero el atributo RecordID.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El identificador del registro de contenedor<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'RecordID') = id<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR id 'RECORDID'<br />
*<br />
350 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RefAttr<br />
Es el atributo del componente al que se hace referencia en un componente<br />
referencia a componente lógico.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'COMP1': 'RefAttr') = 'Text'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'COMP1' SETATR 'Text' 'REFATTR'<br />
*<br />
Capítulo 2. Atributos de componente 351
RefParent<br />
Nombre de la ventana padre del componente destino.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'COMP1': 'RefParent')<br />
C = 'WIN01'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'COMP1' SETATR 'WIN01' 'REFPARENT'<br />
*<br />
352 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RefPart<br />
Nombre del componente situado en el componente lógico destino al que se hace<br />
referencia.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('window': 'COMP1': 'RefPart') = 'EF01'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'COMP1' SETATR 'EF01' 'REFPART'<br />
*<br />
Capítulo 2. Atributos de componente 353
Refresh<br />
Hace que el componente se dibuje de nuevo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Calendario Lienzo Recuadro de selección<br />
Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica<br />
Pulsador gráfico Recuadro de grupo Imagen Recuadro de lista<br />
Edición de múltiples<br />
líneas<br />
Cuaderno Interfaz ODBC/JDBC Recuadro de contorno<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El atributo Refresh sólo puede estar establecido en 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'Refresh') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 1 'REFRESH'<br />
*<br />
354 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RemoveItem<br />
Suprime un elemento de una lista. El parámetro index determina el elemento que<br />
se va a suprimir. Para eliminar todos los elementos de una lista, especifique 0<br />
como valor de índice.<br />
En un componente subarchivo, este atributo se aplica a un campo de entrada de<br />
subarchivo que tenga valores definidos como tipo de validación. Utilice este<br />
atributo para eliminar valores de la lista de validación del campo de entrada del<br />
subarchivo. Primero ha de establecer el atributo ColNumber a fin de identificar la<br />
columna con la que se debe trabajar.<br />
En el caso de un componente selector cíclico, sólo puede eliminar todos los<br />
elementos; es decir, el valor de índice debe establecerse en 0 (eliminar todos). No<br />
está permitido eliminar un elemento específico de un selector cíclico.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista Selector cíclico Subarchivo<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de índice del elemento que se va a eliminar<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'RemoveItem') = 3<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 3 'REMOVEITEM'<br />
*<br />
Capítulo 2. Atributos de componente 355
RemoveLink<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Elimina el enlace entre este componente y el componente indicado mediante el<br />
parámetro part. Si el componente no está enlazado actualmente, no se lleva a cabo<br />
ninguna acción.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de selección Campo de entrada Imagen Recuadro de lista<br />
Medios Panel de medios Graduador Temporizador<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Nombre del componente que se va a suprimir<br />
Debe tener el formato:<br />
'ventana|componente'<br />
donde ventana es la ventana donde está ubicado el componente y<br />
componente es el nombre del componente.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'EF1':'RemoveLink')='WIN1|EF1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' SETATR 'WIN1|EF1' 'REMOVELINK'<br />
*<br />
356 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RemoveMsg<br />
Elimina un mensaje del componente subarchivo de mensajes. El mensaje a eliminar<br />
lo determina el parámetro index. Para eliminar todos los mensajes, especifique 0<br />
como valor de índice.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo de<br />
mensajes<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El número de índice del mensaje que se va a eliminar<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MSG1': 'RemoveMsg') = 3<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MSG1' SETATR 3 'REMOVEMSG'<br />
*<br />
Capítulo 2. Atributos de componente 357
RemoveRcd<br />
Elimina un registro de un contenedor. Para eliminar todos los registros, especifique<br />
el valor 0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Identificador del registro que se suprimirá<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'RemoveRcd') = id<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR id 'REMOVERCD'<br />
*<br />
358 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Request<br />
Solicita el valor actual de un elemento en una aplicación de servidor. Antes de<br />
efectuar la solicitud, deben haberse establecido los atributos AppName y Topic y<br />
debe haberse iniciado la conversación DDE satisfactoriamente.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'Request') = 'A1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'A1' 'REQUEST'<br />
*<br />
Capítulo 2. Atributos de componente 359
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
RmvSrcEvt<br />
Elimina un evento de origen de la lista de eventos que supervisa el componente de<br />
referencia a componente lógico. Este atributo, junto con el atributo AddSrcEvt,<br />
permite a un componente de referencia a componente lógico supervisar varios<br />
eventos. Para añadir nuevos eventos de origen, utilice el atributo AddSrcEvt.<br />
Para identificar el evento de origen que se elimina, especifique juntos los nombres<br />
del componente lógico, la ventana, el componente y el evento. El formato de la<br />
serie es:<br />
'NOMBRECOMPLÓGICO | NOMBREVENTANA | NOMBRECOMP | NOMBREVENTO'<br />
Dado que el compilador no realiza ninguna comprobación de validez, deberá<br />
identificar correctamente cada evento de origen.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++<br />
D Event<br />
*<br />
S 100<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Event='compb|win02|ef02|change'<br />
C EVAL %setatr('win01': 'CRP1':<br />
C<br />
*<br />
'RmvSrcEvt')=Event<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++<br />
D Event<br />
*<br />
S 100<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Event='compb|win02|ef02|change'<br />
C<br />
*<br />
'CRP1' SETATR Event 'RMVSRCEVT'<br />
360 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RmvEvent<br />
Elimina el nombre de evento de la lista de filtro de eventos. Puede utilizar el valor<br />
especial *ALL para que el componente ActiveX o bean Java pare de direccionar al<br />
programa VA<strong>RPG</strong> todos los eventos almacenados en la lista.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
ActiveX Bean Java<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'AX1':'RmvEvent')='EVT2'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 'EVT2' 'RMVEVENT'<br />
*<br />
Capítulo 2. Atributos de componente 361
RowBGClr<br />
Valor numérico que determina el color de fondo de una fila de subarchivo. Debe<br />
utilizar el atributo Index para identificar la fila cuyo color se va a definir.<br />
Si el color de fondo se ha establecido con el atributo RowBGMix, el color de fondo<br />
devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul<br />
3 Rojo<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
362 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL RBcolor = %getatr('win01': 'SFL1': 'RowBGClr')<br />
C EVAL %setatr('win01': 'SFL1': 'Index') = 1<br />
C<br />
*<br />
EVAL %setatr('win01': 'SFL1': 'RowBGClr') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'ROWBGCLR' 'RBcolor' 2 0<br />
C 'SFL1' SETATR 1 'INDEX'<br />
C<br />
*<br />
'SFL1' SETATR 5 'ROWBGCLR'<br />
Capítulo 2. Atributos de componente 363
RowBGMix<br />
Consulta o establece la mezcla de colores de fondo de una fila de subarchivo. Debe<br />
utilizar el atributo Index para identificar la fila en la que se consultará o se<br />
establecerá la mezcla de colores.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla del color de fondo debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL RBclrMx = %getatr('win01': 'SFL1': 'RowBGMix')<br />
C RBclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01': 'SFL1': 'RowBGMix') = '10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'ROWBGMIX'<br />
*<br />
364 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RowFGClr<br />
Valor numérico que determina el color de primer plano de una fila de subarchivo.<br />
Debe utilizar el atributo Index para identificar la fila cuyo color se va a definir.<br />
Si el color de primer plano se ha establecido mediante el atributo RowFGMix, el<br />
color de primer plano devuelto es el que se parece más al color de mezcla.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El color debe ser uno de los siguientes:<br />
-1 Por omisión (no se utiliza en las aplicaciones Java)<br />
0 Blanco<br />
1 Negro<br />
2 Azul<br />
3 Rojo<br />
4 Rosa<br />
5 Verde<br />
6 Cian<br />
7 Amarillo<br />
8 Gris oscuro<br />
9 Azul oscuro<br />
10 Rojo oscuro<br />
11 Rosa oscuro<br />
12 Verde oscuro<br />
13 Cian oscuro<br />
14 Marrón<br />
15 Gris claro<br />
Capítulo 2. Atributos de componente 365
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL RFcolor = %getatr('win01': 'SFL1': 'RowFGClr')<br />
*<br />
C EVAL %setatr('win01': 'SFL1': 'Index') = 1<br />
C EVAL %setatr('win01': 'SFL1': 'RowFGClr') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SFL1' GETATR 'ROWFGCLR' 'RFcolor' 2 0<br />
C 'SFL1' SETATR 1 'INDEX'<br />
C<br />
*<br />
'SFL1' SETATR 5 'ROWFGCLR'<br />
366 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
RowFGMix<br />
Consulta o establece la mezcla de colores de primer plano de una fila de<br />
subarchivo. Debe utilizar el atributo Index para identificar la fila en la que se<br />
consultará o se establecerá la mezcla de colores.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La mezcla de colores de primer plano debe tener el formato siguiente:<br />
'rojo:verde:azul'<br />
donde rojo, verde y azul son valores situados entre 0 y 255 que representan<br />
la intensidad del color respectivo.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL RFclrMx = %getatr('win01': 'SFL1': 'RowFGMix')<br />
C RFclrMx IFNE '10:23:200'<br />
C EVAL %setatr('win01': 'SFL1': 'RowFGMix') = '10:23:200'<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+... .5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR '10:23:200' 'ROWFGMIX'<br />
*<br />
Capítulo 2. Atributos de componente 367
Rows<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Devuelve el número de filas de un origen de datos.<br />
Nota: Utilice este atributo sólo si el controlador ODBC es la Versión 3 o superior.<br />
Los controladores anteriores devolverán resultados imprevisibles.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Nrws=%getatr('win01':'ODBC1':'Rows')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'ROWS' NRWS<br />
*<br />
368 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SBIndex<br />
Establece el valor de índice de un panel de barra de estado. Este valor determina<br />
cuál es el panel activo. Si hay una discrepancia entre el número de paneles y el<br />
valor de SBIndex, por omisión toma el valor 1.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de estado<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de SBIndex puede estar entre 1y5.Elvalor por omisión es 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'SBIndex')=3<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 3 'SBINDEX'<br />
*<br />
Capítulo 2. Atributos de componente 369
SBLabel<br />
El texto que aparece en una barra de estado o en un panel de barra de estado. En<br />
el caso de un componente barra de estado, el valor de SBIndex determina qué<br />
panel recibe el texto. El texto también puede ser un identificador de mensaje del<br />
archivo de mensajes.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Barra de estado Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'WIN1':'SBLabel')='Wait...'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 'Wait...' 'SBLABEL'<br />
*<br />
370 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SBPanes<br />
Recupera el número de paneles activos de un componente barra de estado. Utilice<br />
el atributo SBIndex para establecer cuál es el panel activo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Barra de estado<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL NPanes=%getatr('win01':'WIN1':'SBPanes')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' GETATR 'SBPANES' NPANES<br />
*<br />
Capítulo 2. Atributos de componente 371
SBPosition<br />
Determina la posición de una barra de estado. La posición por omisión es la parte<br />
inferior de la ventana. Si hay una barra de progreso en la parte inferior, se mueve<br />
a la parte superior.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de SBPosition puede ser uno de los siguientes:<br />
1 Colocar la barra de estado en la parte superior<br />
2 Colocar la barra de estado en la parte inferior<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01':'WIN1':'SBPosition')=1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 1 'SBPOSITION'<br />
*<br />
372 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SBStyle<br />
Determina cómo se dibuja la barra de estado. Puede ser hundida (valor por<br />
omisión), en relieve o plana.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de SBStyle puede ser uno de los siguientes:<br />
1 Hundida (valor por omisión)<br />
2 En relieve<br />
3 Plana<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01':'WIN1':'SBStyle')=2<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 2 'SBSTYLE'<br />
*<br />
Capítulo 2. Atributos de componente 373
Scale<br />
Permite que el programador ajuste el ancho de una columna según un porcentaje<br />
del ancho del carácter ″W″.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'SFI1': 'Scale') = 8<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFI1' SETATR 8 'SCALE'<br />
*<br />
374 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Search<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Busca la serie especificada en la lista. La búsqueda empieza en el elemento<br />
especificado por el atributo Index. Se devuelve el valor de Index si se encuentra el<br />
elemento o0sinoseencuentra.<br />
La forma de ejecutar la búsqueda se puede controlar utilizando los atributos Case<br />
y SearchType.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CB1': 'Search') = 'Str1'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR 'STR1' 'SEARCH'<br />
*<br />
Capítulo 2. Atributos de componente 375
SearchType<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina cómo se realiza la comparación para la serie de búsqueda cuando se<br />
utiliza el atributo Search.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de SearchType puede ser uno de los siguientes:<br />
1 Comparar el prefijo del elemento.<br />
2 Comparar todo el elemento.<br />
3 Coincidencia exacta (valor por omisión)<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CB1': 'SearchType') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR 1 'SEARCHTYPE'<br />
*<br />
376 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Selected<br />
Indica si un elemento específico de la parte de lista de un componente está<br />
seleccionado. El elemento que se va a comprobar se especifica estableciendo en<br />
primer lugar el atributo Index o RecordID para el componente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Subarchivo<br />
Códigos de operación<br />
Contenedor Recuadro de lista Subarchivo de<br />
mensajes<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
El estado de Selected puede ser:<br />
0 El elemento no está seleccionado<br />
1 El elemento está seleccionado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL Sel = %getatr('win01': 'LB1': 'Selected')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'SELECTED' Sel 1 0<br />
*<br />
Capítulo 2. Atributos de componente 377
SelectIdx<br />
Devuelve un valor de índice que indica la posición del botón de selección<br />
seleccionado en la ventana Tabuladores y grupos. Los botones de selección se crean<br />
en grupos lógicos, de modo que al seleccionar uno se deseleccionan los demás. Si<br />
no se ha seleccionado ningún botón de selección, se devuelve 0ounnúmero<br />
mayor que el número de botones de selección del grupo.<br />
Puede utilizar el nombre de cualquier botón de selección del grupo como nombre<br />
del componente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Botón de selección<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL sel = %getatr('win01': 'RB1': 'SelectIdx')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'RB1' GETATR 'SELECTIDX' sel 4 0<br />
*<br />
378 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SelectItem<br />
Selecciona un elemento de la parte de lista de un componente. El elemento a<br />
seleccionar está especificado por el parámetro index. Para seleccionar todos los<br />
elementos de la lista, establezca el atributo Index en cero. Sin embargo, en el caso<br />
de un componente recuadro de lista, SelectItem no tiene efecto alguno cuando el<br />
atributo Index es cero.<br />
Si la lista sólo permite una selección, al seleccionar un elemento se deseleccionará<br />
cualquier otro elemento que esté seleccionado actualmente.<br />
Nota: Al seleccionar un elemento se generará un evento Select.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista Subarchivo<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de índice del elemento<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'SelectItem') = 3<br />
*<br />
Ejemplo de formato fijo<br />
Seleccionar todas las entradas de un recuadro de lista si se solicita:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB01' GETATR 'SELECTED' IsChecked 1 0<br />
C IsChecked IFEQ 1<br />
C 'LB1' SETATR 0 'SELECTITEM'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 379
SelectList<br />
Devuelve una lista de los índices de los registros seleccionados de un componente<br />
recuadro de lista o subarchivo. La lista se devuelve en forma de serie de caracteres<br />
formada por 6 valores de posición. Cada valor representa el índice del registro<br />
seleccionado.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de lista Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL List=%getatr('Win01':'LB1':'SelectList')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' GETATR 'SELECTLIST' LIST<br />
*<br />
Ejemplo de SelectList<br />
En el fragmento de código siguiente se muestra una manera de procesar diversos<br />
registros seleccionados de un recuadro de lista mediante el atributo SelectList. En<br />
este ejemplo, se supone que se puede seleccionar 10 registros como máximo.<br />
*<br />
D DS<br />
D theList 60A<br />
D T 6 0 Dim(10) Overlay(theList)<br />
*<br />
C 'ListBox' Getatr 'NbrOfSel' N 2 0<br />
*<br />
C If N>0<br />
C 'ListBox' Getatr 'SelectList' theList<br />
*<br />
C Do N I 2 0<br />
C 'ListBox' Setatr T(I) 'Index'<br />
C 'ListBox' Getatr 'GetItem' theItem 60<br />
* ....<br />
* Se procesa el elemento<br />
* ....<br />
C EndDo<br />
*<br />
C EndIf<br />
380 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SelectRcd<br />
Selecciona un registro de un contenedor.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El identificador del registro que se seleccionará<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'SelectRcd') = id<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR id 'SELECTRCD'<br />
*<br />
Capítulo 2. Atributos de componente 381
SelPrinter<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Hace que aparezca el diálogo de selección de impresora del sistema Windows.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component': '*component':<br />
C 'SelPrinter') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 1 'SELPRINTER'<br />
*<br />
382 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Sequence<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina el orden en el que se añaden los elementos a la parte de lista de un<br />
componente cuando se establece el atributo InsertItem o SetItem.<br />
Cambiar el atributo Sequence no afecta al orden actual de la lista. El orden cambia<br />
cuando se establece el siguiente atributo InsertItem o SetItem.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La secuencia de los elementos añadidos a una lista puede ser:<br />
1 Los elementos se insertan en orden ascendente<br />
2 Los elementos se insertan en orden descendente<br />
3 Los elementos se insertan en la posición especificada por el<br />
atributo Index<br />
4 Los elementos se insertan al final de la lista<br />
Capítulo 2. Atributos de componente 383
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'Sequence') = 1<br />
*<br />
C EVAL rc = %getatr('win01': 'LB1': 'Sequence')<br />
*<br />
Ejemplo de formato fijo<br />
Cambiar la secuencia de un recuadro de lista:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'LB1' GETATR 'SEQUENCE' sequence 1 0<br />
C sequence IFEQ 1<br />
C<br />
*<br />
'LB1' SETATR 2 'SEQUENCE'<br />
C ELSE<br />
C sequence IFEQ 2<br />
C<br />
*<br />
'LB1' SETATR 3 'SEQUENCE'<br />
C ELSE<br />
C 'LB1' SETATR 2 'SEQUENCE'<br />
C<br />
*<br />
ENDIF<br />
C<br />
*<br />
ENDIF<br />
384 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SetItem<br />
Sustituye un elemento existente de la lista. El elemento que se va a sustituir se<br />
determina mediante el valor actual del atributo Index para el componente.<br />
Para insertar un nuevo elemento en una lista, utilice el atributo InsertItem.<br />
Si el atributo Sequence especifica un orden de clasificación (es decir, ascendente o<br />
descendente), la posición del elemento una vez actualizado puede ser distinta de la<br />
indicada por el atributo Index.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El nuevo texto del elemento<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'Index') = 5<br />
C EVAL %setatr('win01': 'LB1': 'SetItem') = 'new'<br />
*<br />
Ejemplo de formato fijo<br />
Cambiar el valor actual de un elemento de recuadro de lista:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'LB1' SETATR 5 'INDEX'<br />
C 'LB1' SETATR 'New' 'SetItem'<br />
*<br />
Capítulo 2. Atributos de componente 385
SetRcdFld<br />
Establece los datos correspondientes a un campo de un registro de contenedor.<br />
Para poder utilizar este atributo, el atributo RecordID debe estar establecido para<br />
indicar el registro de contenedor y ColNumber también debe estar establecido para<br />
indicar qué número de campo debe actualizarse en ese registro.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Los datos que deben establecerse en el campo de contenedor<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'SetRcdFld') = 'Test'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 'Test' 'SetRcdFld'<br />
*<br />
386 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SetRcdIcon<br />
Define el nombre de archivo del icono utilizado para representar este registro en la<br />
vista de árbol o en la vista de iconos. En las aplicaciones Java, este atributo es<br />
aplicable a todas las vistas. El atributo RecordID debe estar establecido para<br />
indicar qué registro se está utilizando.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El nombre de archivo del icono<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'CN1':'SetRcdIcon')<br />
C ='C:\TEST.ICO'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 'C:\TEST.ICO' 'SetRcdIcon'<br />
*<br />
Capítulo 2. Atributos de componente 387
SetRcdText<br />
Define el texto que se mostrará con el icono cuando el contenedor se visualice en<br />
la vista de árbol. El atributo RecordID debe estar establecido para indicar qué<br />
registro se está utilizando.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El texto del registro<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CN1': 'SetRcdText') = text<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR text 'SETRCDTEXT'<br />
*<br />
388 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SetTop<br />
Ordena la lista dentro del componente de modo que el elemento especificado<br />
aparece al principio de la misma.<br />
Si el recuadro de lista no tiene barras de desplazamiento (es decir, todos los<br />
elementos de la lista están visualizados) la lista no se desplaza.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación*<br />
Contenedor Recuadro de lista Subarchivo<br />
*Restricción: Este atributo no está soportado en tiempo de ejecución en las<br />
aplicaciones Java para este componente.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El índice del elemento que se situará al principio de la lista<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'LB1': 'SetTop') = 5<br />
*<br />
Ejemplo de formato fijo<br />
Desplazar la primera entrada seleccionada al principio de la lista:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'LB1' GETATR 'FIRSTSEL' index 2 0<br />
C index IFGT *ZERO<br />
C 'LB1' SETATR index 'SETTOP'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 389
SflNxtChg<br />
Indica si un registro de subarchivo ha cambiado o no. Debe establecer el atributo<br />
Index para indicar qué registro se está viendo afectado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Establézcalo en 1 para indicar que el registro ha cambiado.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('window': 'SFX': 'Index') = 12<br />
C EVAL %setatr('window': 'SFX': 'SflNxtChg') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFX' SETATR 12 'INDEX'<br />
C<br />
*<br />
'SFX' SETATR 1 'SFLNXTCHG'<br />
390 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ShData<br />
Especifica los datos de usuario que se deben leer o grabar en el espacio de datos<br />
compartidos establecido.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'ShData')='DTA'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 'DTA' 'SHDATA'<br />
*<br />
Capítulo 2. Atributos de componente 391
ShDataLen<br />
Especifica el tamaño de los datos que se van a utilizar de los datos compartidos. El<br />
valor por omisión es 1024 bytes.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'ShDataLen')=100<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 100 'SHDATALEN'<br />
*<br />
392 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ShDataName<br />
Especifica el nombre de los datos globales que se pueden compartir en<br />
aplicaciones. El tamaño de cada uno de los datos compartidos está determinado a<br />
1024 bytes.<br />
Al establecer ShDataName, el sistema comprueba si existe el espacio de datos<br />
compartidos indicado. Si no lo está, se creará.<br />
Nota: Sólo puede utilizarse una instancia de la memoria compartida con nombre.<br />
Para la comunicación entre procesos, sólo puede utilizar memoria<br />
compartida en una aplicación, no en un componente. En los componentes,<br />
es mejor la utilización de parámetros para la comunicación entre procesos.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'ShDataName')='DTAN'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 'DTAN' 'SHDATANAME'<br />
*<br />
Capítulo 2. Atributos de componente 393
ShDataPos<br />
Especifica la posición que hay en los datos compartidos a la que se hace referencia.<br />
La posición inicial por omisión es 1. El valor de ShDataLen y ShDataPos juntos no<br />
puede sobrepasar 1024.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('*component':'*component':'ShDataPos')=100<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' SETATR 100 'SHDATAPOS'<br />
*<br />
394 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ShowMsgID<br />
Habilita o inhabilita la visualización de los identificadores de mensaje (MSGnnnn)<br />
en el recuadro de mensajes si se especifica el código de operación DSPLY.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de ShowMsgID puede ser uno de los siguientes:<br />
0 No visualizar los identificadores de mensaje.<br />
1 Visualizar los identificadores de mensaje. Es el valor por omisión.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('*component':'*component':'ShowMsgID')=1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*COMPONENT' SETATR 1 'SHOWMSGID'<br />
*<br />
Capítulo 2. Atributos de componente 395
ShowProp<br />
Establezca este atributo en 1 para que el componente muestre el diálogo de página<br />
de propiedades del objeto.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Bean Java<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'AX1':'ShowProp=') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AX1' SETATR 1 'SHOWPROP'<br />
*<br />
396 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ShowRects<br />
Indica si se mostrarán o no los rectángulos resaltados definidos por el usuario.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de ShowRects puede ser uno de los siguientes:<br />
0 No se mostrarán los rectángulos<br />
1 Sí se mostrarán los rectángulos<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isshown = %getatr('win01': 'CAL1': 'ShowRects')<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'ShowRects') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'SHOWRECTS' isshown 1 0<br />
*<br />
Capítulo 2. Atributos de componente 397
ShowTabs<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Si se establece este atributo en 0, se ocultarán todas las pestañas de un componente<br />
cuaderno.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Cuaderno<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'WIN1': 'ShowTabs') = 0<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 0 'SHOWTABS'<br />
*<br />
398 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
ShowText<br />
Indica si se mostrará o no el texto definido por el usuario.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de ShowText puede ser uno de los siguientes:<br />
0 No se mostrará el texto<br />
1 Sí se mostrará el texto<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isshown = %getatr('win01': 'CAL1': 'ShowText')<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'ShowText') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'SHOWTEXT' shown 1 0<br />
*<br />
Capítulo 2. Atributos de componente 399
ShowTips<br />
Determina si debe visualizarse la ayuda flotante para un componente específico o<br />
para todos los componentes de la ventana. Si establece ShowTips para una<br />
ventana, este valor tiene prioridad sobre todos los demás valores establecidos para<br />
un componente específico de la ventana. Por ejemplo, si inhabilita que se muestre<br />
el texto de ayuda para la ventana, este valor se aplica también a todos los<br />
componentes de la ventana.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada<br />
Pulsador gráfico Imagen Recuadro de lista Subarchivo de<br />
mensajes<br />
Edición de múltiples<br />
líneas<br />
Pulsador Botón de selección Graduador<br />
Selector cíclico Texto estático Subarchivo Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de ShowTips puede ser uno de los siguientes:<br />
0 No se visualiza la ayuda flotante para un componente específico ni<br />
para todos los componentes de la ventana.<br />
1 Se visualizará ayuda flotante para aquellos componentes de la<br />
ventana que tengan definido TipText.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isshown = %getatr('win01': 'Win01': 'ShowTips')<br />
C<br />
*<br />
EVAL %setatr('win01': 'Win01': 'ShowTips') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'Win01' GETATR 'SHOWTIPS' shown 1 0<br />
*<br />
400 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SizeToFit<br />
Ajusta el tamaño del componente de forma automática de modo que el último<br />
elemento de la lista resulte completamente visible.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación*<br />
Recuadro de lista Subarchivo<br />
*Restricción: Este atributo no está soportado en tiempo de ejecución en las<br />
aplicaciones Java para este componente.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de SizeToFit puede ser uno de los siguientes:<br />
0 No se ajusta el tamaño del componente.<br />
1 Ajustar automáticamente el tamaño del componente.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CB1': 'SizeToFit') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR 1 'SIZETOFIT'<br />
*<br />
Capítulo 2. Atributos de componente 401
SortAsc<br />
Ordena los registros de una columna de contenedor en orden ascendente. Las<br />
columnas con datos de texto se ordenan alfabéticamente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El número de la columna que se debe ordenar.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CTR1': 'SortAsc') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CTR1' SETATR 2 'SORTASC'<br />
*<br />
402 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SortDesc<br />
Ordena los registros de una columna de contenedor en orden descendente. Las<br />
columnas con datos de texto se ordenan alfabéticamente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El número de la columna que se debe ordenar.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CTR1': 'SortDesc') = 2<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CTR1' SETATR 2 'SORTDESC'<br />
*<br />
Capítulo 2. Atributos de componente 403
SQLError<br />
Indica si la operación anterior se ha realizado correctamente. Si se devuelve el<br />
valor 0, la operación anterior se ha ejecutado correctamente. Todos los demás<br />
valores devueltos indican que se ha producido un error.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Err=%getatr('win01':'ODBC1':'SQLError')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' GETATR 'SQLERROR' ERR<br />
*<br />
404 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SQLMsgBox<br />
Suprime o visualiza el recuadro de mensajes ODBC si se producen errores al<br />
procesar una tabla.<br />
Si establece este atributo en 0 para suprimir el recuadro de mensajes, puede<br />
utilizar el atributo SQLError para determinar si se ha producido un error. Después,<br />
puede utilizar el atributo Handle y llamar a la API ODBC para obtener<br />
información adicional.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de SQLMsgBox puede ser uno de los siguientes:<br />
0 No visualizar el recuadro de mensajes.<br />
1 Visualizar el recuadro de mensajes. Este es el valor por omisión.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01':'ODBC1':'SQLMsgBox')=0<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 0 'SQLMSGBOX'<br />
*<br />
Capítulo 2. Atributos de componente 405
SQLQuery<br />
Define la sentencia SQL que se ejecuta si se establece el atributo ExecuteSQL en 1.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL Query = 'Select * From "Customers"'<br />
C EVAL %setatr('win01':'ODBC1':'SQLQuery')=Query<br />
C<br />
*<br />
EVAL %setatr('win01':'ODBC1':'ExecuteSQL')=1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++++++<br />
*<br />
D Query<br />
*<br />
C 'Select * From "Customers"'<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC' Setatr Query 'SQLQuery'<br />
C<br />
*<br />
'ODBC' Setatr 1 'ExecuteSQL'<br />
406 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
StartAt<br />
Fuerza que se inicie la operación READC en el registro especificado del<br />
subarchivo. Este atributo resulta de utilidad en los programas que utilizan READC<br />
de forma reiterativa para comprobar la existencia de registros modificados en un<br />
subarchivo y devolverlos. Consulte el apartado “Ejemplo de StartAt” en la<br />
página 408.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El registro en el que debe iniciarse<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':<br />
'SFL1': 'StartAt')=4<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFL1' SETATR 4 'STARTAT'<br />
*<br />
Capítulo 2. Atributos de componente 407
Ejemplo de StartAt<br />
El siguiente fragmento de código utiliza reiterativamente la operación READC para<br />
comprobar la existencia de todos los registros modificados en un subarchivo,<br />
devolverlos y procesarlos. Se supervisa el campo OPT para que tenga una entrada<br />
correcta. Si el valor de OPT no es correcto, el programa utiliza el atributo<br />
SflNxtChg para señalar el registro incorrecto como modificado. El atributo StartAt<br />
hace que la siguiente operación READC empiece en el registro situado a<br />
continuación del que tiene un error.<br />
Por omisión, READC empieza la búsqueda de registros modificados en el primer<br />
registro del subarchivo. Cuando se encuentra un registro modificado y se devuelve<br />
al programa, su estado se restablece en no modificado. En este ejemplo, el atributo<br />
StartAt también evita que la operación READC entre en un bucle en el registro<br />
señalado por SflNxtChg.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
* Suponer que el subarchivo tiene un campo llamado OPT cuyo valor<br />
debe ser<br />
* mayor que 0<br />
*<br />
C ReadC SFL1<br />
99<br />
C Dow NOT *IN99<br />
*<br />
C If Opt>0<br />
*<br />
* Procesar el registro<br />
C Else<br />
*<br />
* El registro no es válido; establecer SFLNXTCHG para leerlo en la<br />
siguiente iteración.<br />
C 'SFL1' Getatr 'Index' X<br />
C 'SFL1' Setatr X 'Index'<br />
C 'SFL1' Setatr 1 'SFLNXTCHG'<br />
*<br />
* Establecer STARTAT para empezar a leer después del<br />
registro erróneo.<br />
C Eval X=X+1<br />
C 'SFL1' Setatr X 'StartAt'<br />
C ReadC SFL1<br />
99<br />
C EndDo<br />
*<br />
408 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
StartNew<br />
Si este atributo está establecido en 1, los datos existentes se dejan aparte y se<br />
mantienen para seguir dibujando la gráfica. Los nuevos datos establecidos no se<br />
utilizarán en la gráfica hasta que no se establezca el atributo UseData.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GRA1': 'StartNew') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA' SETATR 1 'STARTNEW'<br />
*<br />
Capítulo 2. Atributos de componente 409
StatusBar<br />
Añade o elimina una barra de progreso simple de un panel, en o de una ventana.<br />
La posición por omisión es la parte inferior de la ventana. Utilice el componente<br />
barra de estado si necesita una barra de estado compuesta, con varios paneles e<br />
información de acción.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de StatusBar puede ser uno de los siguientes:<br />
1 Crear una barra de estado<br />
0 Eliminar una barra de estado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01':'WIN1':'StatusBar')=1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' SETATR 1 'STATUSBAR'<br />
*<br />
410 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
SwitchTo<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Si se establece este atributo, al iniciar una segunda instancia de un programa la<br />
instancia actual del programa será la que tendrá el foco. El atributo SwitchTo<br />
acepta como su propio valor el handle de la ventana del programa que va a<br />
obtener el foco. Si la ventana tiene formato de icono, se restaurará.<br />
El handle es un valor de 32 bits y debe estar declarado en una especificación D<br />
como tipo I (sin signo) con una longitud de 10 y 10 decimales.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL hWnd=%getatr('Win1':'Win1':'Handle')<br />
C<br />
*<br />
EVAL %setatr('*component':'*component':'SwitchTo')=hWnd<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN1' GETATR 'HANDLE' HWND<br />
C<br />
*<br />
'*COMPONENT' SETATR HWND 'SWITCHTO'<br />
Capítulo 2. Atributos de componente 411
TabImage<br />
Especifica el nombre de archivo de la imagen que se visualizará en una pestaña<br />
Página de cuaderno, junto a la etiqueta. Consulte el atributo FileName para ver la<br />
lista de los tipos de imágenes soportados. Si se especifica *BLANK o no se<br />
especifica ningún nombre de archivo, la imagen se elimina.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Página de cuaderno Página de cuaderno<br />
con lienzo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'NP1':'TabImage') = 'N1.ICO'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'NP1' SETATR 'N1.ICO' 'TABIMAGE'<br />
*<br />
412 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TabLabel<br />
Define la etiqueta que aparece en una pestaña de página de cuaderno. El atributo<br />
PageNumber debe estar establecido para indicar a qué página afecta.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Página de cuaderno<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR Sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI. Para ello, especifique un valor en el campo Texto<br />
de tabulador.<br />
Valor permitido<br />
El texto que aparece en una pestaña de página de cuaderno<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'NBP1': 'TabLabel')<br />
C = 'Section A'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'NBP1' SETATR 'Section A' 'TABLABEL'<br />
*<br />
Capítulo 2. Atributos de componente 413
Text<br />
Establece o devuelve el valor de texto de la parte del campo de entrada de un<br />
componente.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Selector cíclico<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Se puede establecer utilizando el cuaderno de propiedades en el<br />
Diseñador GUI, excepto en el caso de un componente edición de<br />
múltiples líneas o selector cíclico. Si se trata de un componente<br />
recuadro de combinación, utilice la página Datos y especifique<br />
valores. En el caso de un componente campo de entrada, utilice la<br />
página General e indique un valor en el campo Texto.<br />
Valor permitido<br />
El valor del campo de entrada<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldstring = %getatr('win01': 'EF1': 'Text')<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'Text') = 'Newstring'<br />
*<br />
Ejemplo de formato fijo<br />
Guardar el valor de un campo de entrada y cambiarlo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'TEXT' oldstring 64<br />
C 'EF1' SETATR 'Newstring' 'TEXT'<br />
*<br />
414 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TextEnd<br />
Determina el desplazamiento de carácter del último carácter seleccionado. Si no se<br />
ha seleccionado ningún texto, se devuelve el valor 0. El texto se selecciona<br />
situando el puntero del ratón sobre el texto, pulsando el botón del ratón y<br />
moviendo el puntero a lo largo del texto.<br />
Este atributo se puede utilizar con TextStart para seleccionar una parte<br />
determinada de texto en el componente y para determinar la longitud del texto<br />
seleccionado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'MLE1': 'TextEnd') = value<br />
C<br />
*<br />
EVAL value = %getatr('win01': 'MLE1': 'TextEnd')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'TEXTEND' endoffset 3 0<br />
*<br />
Capítulo 2. Atributos de componente 415
TextLength<br />
Devuelve la longitud del texto en un componente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL length = %getatr('win01': 'EF1': 'TextLength')<br />
*<br />
Ejemplo de formato fijo<br />
Obtener la longitud del texto de un campo de entrada:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'TEXTLENGTH' length 3 0<br />
*<br />
416 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TextSelect<br />
Devuelve el texto seleccionado del componente. Si no hay texto seleccionado, se<br />
devuelve una serie de caracteres nula.<br />
Para seleccionar texto en el campo, establezca los atributos TextStart y TextEnd.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL value = %getatr('win01': 'MLE1': 'TextSelect')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'TEXTSELECT' seltext 100<br />
*<br />
Capítulo 2. Atributos de componente 417
TextStart<br />
Determina el primer carácter del campo de texto que se ha seleccionado. Si no se<br />
ha seleccionado ningún texto, se devuelve el valor 0.<br />
Este atributo puede utilizarse con TextEnd para seleccionar una cierta parte de<br />
texto en el componente.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Campo de entrada Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'MLE1': 'TextStart') = value<br />
C<br />
*<br />
EVAL value = %getatr('win01': 'MLE1': 'TextStart')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'TEXTSTART' endoffset 3 0<br />
*<br />
418 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TextString<br />
Devuelve todo el texto de un componente edición de múltiples líneas y convierte<br />
todos los caracteres de salto de línea o de retorno de carro en espacios en blanco.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL ATxt=%getatr('Win01':'ML1':'TextString')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ML1' GETATR 'TEXTSTRING' ATXT<br />
*<br />
Capítulo 2. Atributos de componente 419
TickLabel<br />
Asigna una serie a una marca de escala de un componente graduador. El atributo<br />
TickNumber determina el TickLabel al que se hace referencia.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Graduador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI. Para ello, seleccione el pulsador Añadir y<br />
especifique los valores en el recuadro de diálogo Añadir texto de<br />
escala.<br />
Valor permitido<br />
La etiqueta asignada a la marca de escala del graduador<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
Z-ADD 0 percent<br />
C DO 5 ticknbr<br />
C EVAL %setatr('win01':'SLIDER1':'TickNumber')=ticknbr<br />
C EVAL %setatr('win01':'SLIDER1':'TickLabel')=percent<br />
C ADD 25 percent<br />
C<br />
*<br />
ENDDO<br />
Ejemplo de formato fijo<br />
Cambiar el texto para una escala de graduador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C Z-ADD *ZERO value 2 0<br />
C 1 DO 11 tick 2 0<br />
C 'SLIDER1' SETATR tick 'TICKNUMBER'<br />
C 'SLIDER1' SETATR value 'TICKLABEL'<br />
C ADD 10 value<br />
C<br />
*<br />
ENDDO<br />
420 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TickNumber<br />
Especifica en qué marca de escala del graduador se colocará el siguiente texto<br />
TickLabel.<br />
El número será un valor entre 1yelnúmero de marcas de escala especificado para<br />
el graduador en los valores del cuaderno.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Graduador<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El número de marca de escala<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL x = %getatr('win01': 'SLIDER1': 'TickNumber')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SLIDER1' GETATR 'TICKNUMBER' OldTick 3 0<br />
C<br />
*<br />
'SLIDER1' SETATR NewTick 'TICKNUMBER'<br />
Capítulo 2. Atributos de componente 421
Tile<br />
Cuando se establece en 1, la imagen del lienzo aparecerá en mosaico.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Lienzo<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de Tile puede ser uno de los siguientes:<br />
0 La imagen no se establece en mosaico<br />
1 La imagen se establece en mosaico<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAN': 'Tile') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAN1' SETATR 1 'TILE'<br />
*<br />
422 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TimeOut<br />
Este valor determina cuánto tendrá que esperar un componente cliente DDE para<br />
establecer una conversación DDE después de establecer DDEMode en Initiate. Este<br />
valor se expresa en segundos.<br />
Si la conversación DDE no se ha completado en este período de tiempo, se señala<br />
un evento Timeout para el programa.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'TimeOut') = 5<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 5 'TIMEOUT'<br />
*<br />
Capítulo 2. Atributos de componente 423
TimerMode<br />
Determina la modalidad de operación actual para un componente temporizador.<br />
Cuando la modalidad está establecida en Start, el temporizador empezará a<br />
generar eventos Tick. Al establecer la modalidad en Stop se dejan de generar<br />
eventos Tick. Cuando TimerMode está establecido en Pause, el temporizador<br />
dejará de generar eventos Tick, pero seguirá actualizando el atributo TimerTicks.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Temporizador<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor de TimerMode puede ser uno de los siguientes:<br />
1 Start<br />
2 Stop (Parar)<br />
3 Pause (Pausa)<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C PB1 BEGACT PRESS<br />
C EVAL %setatr('win01': 'TIMER01': 'TimerMode') = 1<br />
C ...<br />
C<br />
*<br />
ENDACT<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'TIMER1' SETATR 1 'TIMERMODE'<br />
*<br />
424 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TimerTicks<br />
Determina el valor de escala actual de un temporizador. El valor de TimerTicks es<br />
el número de veces que el temporizador ha generado un evento Tick.<br />
Tenga en cuenta que los atributos Interval y Multiplier también determinan el<br />
número de eventos Tick. El atributo TimerTicks se determina de la manera<br />
siguiente:<br />
TimerTicks = (tiempo transcurrido en milisegundos) / (Interval * Multiplier)<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Temporizador<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La cuenta de escala actual del temporizador.<br />
Ejemplo de formato libre<br />
Cambiar el valor de impulsos del temporizador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL count=%getatr('win01':'TIMER01':'TimerTicks')<br />
C count IFGT 1000<br />
C EVAL %setatr('win01':'TIMER01':'TimerTicks')=0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'TIMER01' GETATR 'TIMERTICKS' count 6 0<br />
C count IFGT 1000<br />
C 'TIMER01' SETATR 0 'TIMERTICKS'<br />
C<br />
*<br />
ENDIF<br />
Capítulo 2. Atributos de componente 425
TipText<br />
Especifica el texto visualizado en el control de ayuda flotante.<br />
Para un componente gráfica, debe asociar el texto de ayuda a un punto de datos.<br />
En una barra, por ejemplo, el texto flotante se visualizará junto a la barra que<br />
representa al punto de datos.<br />
Para un componente calendario, debe asociar el texto de ayuda al atributo<br />
DateIdx. La ayuda flotante se asociará con esa fecha.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Calendario Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor<br />
Campo de entrada Gráfica Pulsador gráfico Imagen<br />
Recuadro de lista Subarchivo de Edición de múltiples Pulsador<br />
mensajes<br />
líneas<br />
Botón de selección<br />
Subarchivo<br />
Graduador Selector cíclico Texto estático<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Un máximo de 80 caracteres de texto o un identificador de mensaje<br />
(*MSGnnn)<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'TipText')='*msg0002'<br />
*/xmp><br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 'Hello' 'TipText'<br />
*<br />
426 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Title<br />
Determina el texto del título de la gráfica.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL value = %getatr('win01': 'GRA1': 'Title')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' GETATR 'TITLE' seltitle 1 0<br />
*<br />
Capítulo 2. Atributos de componente 427
TitlePlace<br />
Indica dónde debe estar situado el título dentro de la gráfica.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de TitlePlace puede ser uno de los siguientes:<br />
0 Sin título<br />
1 Por encima de la gráfica<br />
2 Por debajo de la gráfica<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'GRA1': 'TitlePlace') = 3<br />
C<br />
*<br />
EVAL where = %getatr('win01': 'GRA1': 'TitlePlace')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' GETATR 'TITLEPLACE' where 1 0<br />
*<br />
428 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
Top<br />
Especifica en pixels la coordenada superior de pantalla del componente u objeto.<br />
Nota: El punto de origen es el ángulo superior izquierdo y empieza por cero.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Control de animación Calendario Lienzo*<br />
Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Cliente DDE<br />
Campo de entrada Gráfica Pulsador gráfico Recuadro de grupo<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java Recuadro de lista<br />
Medios Panel de medios Edición de múltiples<br />
líneas<br />
Cuaderno<br />
Interfaz ODBC/JDBC Recuadro de contorno Barra de progreso Pulsador<br />
Botón de selección Graduador Selector cíclico Texto estático<br />
Subarchivo Temporizador Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
* Restricción: Este atributo sólo se puede obtener en tiempo de ejecución<br />
para el componente lienzo.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
Número de pixels<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL otop = %getatr('win01': 'Image1': 'Top')<br />
C otop SUB 200 newtop<br />
C EVAL %setatr('win01': 'Image1': 'Top') = newtop<br />
*<br />
Ejemplo de formato fijo<br />
Mover una imagen 200 pixels dentro de su ventana.<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'IMAGE1' GETATR 'TOP' OldTop 4 0<br />
C OldTop SUB 200 NewTop 4 0<br />
C<br />
*<br />
'IMAGE' SETATR NewTop 'TOP'<br />
Capítulo 2. Atributos de componente 429
Topic<br />
El atributo Topic se establece para informar a la aplicación del servidor en una<br />
conversación DDE acerca del tema de la conversación. Antes de que pueda<br />
comenzar la conversación, también debe establecerse el atributo AppName.<br />
Un tema DDE es un conjunto de datos que puede procesar la aplicación del<br />
servidor. En el caso de una aplicación de hoja de cálculo, sería un archivo de hoja<br />
de cálculo.<br />
Si el programa servidor es un componente lógico <strong>VisualAge</strong> <strong>RPG</strong>, la sintaxis de<br />
este atributo es:<br />
'nombreapl|nombreapl'<br />
siendo nombreapl el nombre del componente lógico <strong>VisualAge</strong> <strong>RPG</strong>. Por ejemplo, si<br />
el programa servidor es un componente lógico <strong>VisualAge</strong> <strong>RPG</strong> llamado server, este<br />
atributo se establecería de este modo:<br />
EVAL %setatr('WIN1':'DDE1':'Topic') = 'SERVER|SERVER'<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'DDE1': 'AppName') = 'APP01'<br />
C EVAL %setatr('win01': 'DDE1': 'Topic') = 'APP01.WG1'<br />
C EVAL %setatr('win01': 'DDE1': 'DDEMode') = 1<br />
C<br />
*<br />
...<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'DDE1' SETATR 'APP01.WG1' 'TOPIC'<br />
*<br />
430 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
TopLine<br />
Indica el número de la primera línea de un campo de edición de múltiples líneas.<br />
Si TopLine está establecido en cero, el campo de edición de múltiples líneas se<br />
visualizará en la última página.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Número de línea<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'MLE1': 'TopLine') = 0<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' SETATR 0 'TOPLINE'<br />
*<br />
Capítulo 2. Atributos de componente 431
TopRecord<br />
Sitúa la lista dentro del componente subarchivo de modo que el elemento de índice<br />
especificado se sitúa al principio de la lista u obtiene (o devuelve) el índice de la<br />
fila visible superior.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL itemtop = %setatr('win01': 'SFI1': 'TopRecord')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SFI1' SETATR 'TOPRECORD' itemtop<br />
*<br />
432 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Treble<br />
Nota: Este atributo sólo se utiliza en Windows NT/95/98.<br />
El atributo Treble establece el nivel de agudos para el archivo de audio. El nivel<br />
puede establecerse entre 0 y 100.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor debe estar entre 0y100<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'AUD1': 'Treble') = 42<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'AUD1' SETATR 42 'TREBLE'<br />
*<br />
Capítulo 2. Atributos de componente 433
UnBind<br />
*Restricción: Este atributo sólo se utiliza en las aplicaciones Java.<br />
Establezca este atributo en 1 para desenlazar componentes previamente enlazados.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'OD1':'UnBind')=1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'OD1' SETATR 1 'UNBIND'<br />
*<br />
434 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
UnderPoint<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Establezca este atributo en la representación en forma de serie de una posición<br />
relativa al ángulo superior izquierdo de la gráfica (por ejemplo, ″25 10″). A<br />
continuación, utilice los valores de los atributos HitItem, DataPoint y DataGroup<br />
para determinar qué parte de la gráfica está situada debajo del punto dado.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor permitido<br />
Serie con el formato ″x y″<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL xystring = %getatr('win01': 'GPH1': 'UnderPoint')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GPH1' GETATR 'UNDERPOINT' xystring<br />
*<br />
Capítulo 2. Atributos de componente 435
Undo<br />
Establezca este atributo en 1 para deshacer el último cambio que se ha efectuado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'ML1': 'Undo') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ML1' SETATR 1 'UNDO'<br />
*<br />
436 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
UpdateRow<br />
Determina el número de fila que se actualiza en el conjunto de resultados. No es<br />
necesario buscar antes una fila para actualizarla. Este atributo ocasionará que se<br />
actualice cualquier fila.<br />
Para actualizar una fila que se acaba de buscar, utilice el atributo CurrentRow para<br />
obtener su número de fila.<br />
Nota: En las aplicaciones Java, este atributo necesita el controlador adecuado de<br />
conformidad con JDBC 2.0.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Interfaz ODBC/JDBC<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'ODBC1':'UpdateRow')=4<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'ODBC1' SETATR 4 'UPDATEROW'<br />
*<br />
Capítulo 2. Atributos de componente 437
UseData<br />
Establezca este atributo en 1 para empezar a utilizar los datos establecidos para la<br />
gráfica desde la última vez que se estableció StartNew.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
El valor permitido es 1<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GRA1': 'UseData') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' SETATR 1 'USEDATA'<br />
*<br />
438 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
UseDelim<br />
Establezca este atributo en 1 para identificar los datos que tienen un carácter<br />
delimitador asociado. Utilice el atributo DelimChar para especificar el carácter<br />
delimitador, si lo hay.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Códigos de operación<br />
Recuadro de lista<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CB1': 'UseDelim') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CB1' SETATR 1 'USEDELIM'<br />
*<br />
Capítulo 2. Atributos de componente 439
UserData<br />
Permite que cualquier serie definida por el usuario pueda asociarse con un<br />
componente. La serie no tiene restricción de longitud.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Todos los componentes excepto el componente *component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Los datos que se van a asociar al componente<br />
Ejemplo de formato libre<br />
Guardar el valor de un campo de entrada y cambiarlo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL oldstring = %getatr('win01': 'EF1': 'UserData')<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'UserData') = 'Newstring'<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'USERDATA' oldstring 64<br />
C<br />
*<br />
'EF1' SETATR 'Newstring' 'USERDATA'<br />
440 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Validate<br />
Cuando este atributo está establecido, al pulsar el botón al que se aplica, se<br />
realizará la validación de campo para aquellos componentes que tengan valores de<br />
validación de campo y estén en la misma ventana que el botón. La validación de<br />
campo incluye aspectos tales como la comprobación del rango y de valores.<br />
Si se encuentra algún error durante la validación de campo, se visualiza un<br />
mensaje y no se señala el evento Press.<br />
Si no hay errores, o si no hay campos con validación de campo, se invoca la<br />
subrutina de acción del evento Press.<br />
Nota: Si ningún pulsador o pulsador gráfico de la ventana tiene establecido el<br />
atributo Validate. no se realizará la validación de campo.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Pulsador gráfico Pulsador<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI. Para ello, seleccione el estilo Ejecutar validación de<br />
campo.<br />
Valor permitido<br />
El valor de Validate puede ser uno de los siguientes:<br />
0 No efectuar validación de entrada<br />
1 Efectuar validación de entrada<br />
Capítulo 2. Atributos de componente 441
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL validate = %getatr('win01': 'EF01': 'Validate')<br />
*<br />
C EVAL %setatr('win01': 'EF01': 'Validate') = 1<br />
*<br />
Ejemplo de formato fijo<br />
Guardar el valor de un campo de entrada y cambiarlo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'VALIDATE' validate 1 0<br />
C 'EF1' SETATR 1 'VALIDATE'<br />
*<br />
442 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Value<br />
Devuelve el valor de un componente graduador. El valor será mayor o igual que el<br />
valor mínimo asignado al graduador, y menor o igual que el valor máximo.<br />
Para un selector cíclico, se devuelve el contenido actual del campo de entrada.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Graduador Selector cíclico<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Valor del graduador o del campo de entrada.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL oldvalue = %getatr('win01': 'SLIDER1': 'Value')<br />
C<br />
*<br />
EVAL %setatr('win01': 'SLIDER1': 'Value') = 5<br />
Ejemplo de formato fijo<br />
Guardar el valor de un campo de entrada y cambiarlo:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'SLIDER1' GETATR 'VALUE' OldValue 3 0<br />
C 'SLIDER1' SETATR 5 'VALUE'<br />
*<br />
Capítulo 2. Atributos de componente 443
View<br />
Determina cómo se visualizan los registros de un contenedor. Un contenedor<br />
puede visualizar registros en una vista de iconos, de árbol, de detalles o de árbol<br />
de texto.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
*Restricción: En las aplicaciones Java, este atributo sólo se puede obtener<br />
en tiempo de ejecución para este componente.<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
La vista de contenedor puede ser:<br />
1 Vista de iconos<br />
2 De árbol<br />
3 Vista de detalles<br />
4 Vista de árbol de texto<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CN1': 'View') = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'VIEW'<br />
*<br />
444 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Visible<br />
Determina si el componente es visible o no.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Control de animación Calendario Recuadro de selección<br />
Recuadro de<br />
Referencia a<br />
Contenedor Cliente DDE<br />
combinación<br />
componente lógico<br />
Campo de entrada Gráfica Pulsador gráfico Recuadro de grupo<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java Recuadro de lista<br />
Medios Panel de medios Subarchivo de Edición de múltiples<br />
mensajes<br />
líneas<br />
Cuaderno Página de cuaderno Interfaz ODBC/JDBC Recuadro de contorno<br />
Menú emergente* Barra de progreso Pulsador Botón de selección<br />
Graduador Selector cíclico Texto estático Barra de estado<br />
Subarchivo Temporizador Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
*Restricción: Para las aplicaciones Windows, una consulta (GETATR)<br />
devuelve un valor 0 para este atributo. En las aplicaciones<br />
Java, este atributo devuelve el estado del menú emergente.<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de Visible puede ser uno de los siguientes:<br />
0 El componente no es visible<br />
1 El componente es visible<br />
Nota: En los menús emergentes de las aplicaciones Java, también<br />
debe establecer los atributos InvPname (nombre de padre<br />
del invocador) e InvName (nombre de invocador), y las<br />
coordenadas x-y del menú emergente del espacio de<br />
coordenadas del invocador.<br />
Capítulo 2. Atributos de componente 445
Ejemplo de formato libre<br />
Conmutar el estado de Visible de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL isVisible = %getatr('win01': 'EF1': 'Visible')<br />
C isVisible IFEQ 1<br />
C<br />
*<br />
EVAL %setatr('win01': 'EF1': 'Visible') = 0<br />
C ELSE<br />
C EVAL %setatr('win01': 'EF1': 'Visible') = 1<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'VISIBLE' IsVisible 1 0<br />
C IsVisible IFEQ 1<br />
C<br />
*<br />
'EF1' SETATR 0 'VISIBLE'<br />
C ELSE<br />
C 'EF1' SETATR 1 'VISIBLE'<br />
C<br />
*<br />
ENDIF<br />
446 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
VisTitle<br />
Determina si el título del contenedor es visible o no.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El título no es visible<br />
1 El título es visible<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CN1': 'VisTitle) = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'VisTitle'<br />
*<br />
Capítulo 2. Atributos de componente 447
VisTitlSep<br />
Determina si el separador del título del contenedor es visible o no.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Contenedor<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Valor permitido<br />
Uno de los siguientes:<br />
0 El separador del título no es visible<br />
1 El separador del título es visible<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CN1': 'VisTitlSep) = 1<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CN1' SETATR 1 'VisTitlSep'<br />
*<br />
448 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Volume<br />
Nota: Este atributo sólo se utiliza en Windows NT/95/98.<br />
Establece el volumen para el componente medios y la salida de ondas y el<br />
sintetizador del sistema.<br />
En el caso de un panel de medios, determina el valor del graduador de volumen.<br />
Este valor está entre 0 y 100.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Medios Panel de medios<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de volumen<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL curvol = %getatr('win01': 'MMP1': 'Volume')<br />
C<br />
*<br />
EVAL %setatr('win01': 'MMP1': 'Volume') = 5<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'MMP1' GETATR 'VOLUME' curvol 3 0<br />
C<br />
*<br />
'MMP1' SETATR 5 'VOLUME'<br />
Capítulo 2. Atributos de componente 449
VRule<br />
Añade una regla vertical entre cada columna de una fila de datos de subarchivo o<br />
de calendario. Debe haber por lo menos una fila de datos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario Subarchivo<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de VRule puede ser uno de los siguientes:<br />
0 Desactiva la regla<br />
1 Activa la regla<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL Vtrule = %getatr('win01': 'SF1': 'VRule')<br />
C Vtrule IFEQ 0<br />
C EVAL %setatr('win01': 'SF1': 'VRule') = 1<br />
C ELSE<br />
C EVAL %setatr('win01': 'SF1': 'VRule') = 0<br />
C<br />
*<br />
ENDIF<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
'SF1' GETATR 'VRULE' Vtrule 1 0<br />
C<br />
*<br />
'SF1' SETATR 1 'Vtrule'<br />
450 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
WeekDay<br />
Indica el día de la semana que está seleccionado.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Uno de los siguientes:<br />
0 Domingo<br />
1 Lunes<br />
2 Martes<br />
3 Miércoles<br />
4 Jueves<br />
5 Viernes<br />
6 Sábado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL index = %getatr('win01': 'CAL1': 'WeekDay')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'WEEKDAY' 02<br />
*<br />
Capítulo 2. Atributos de componente 451
WeekDayIdx<br />
Devuelve el día de la semana que corresponde a los valores de YearIdx, MonthIdx<br />
y DayIdx.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Valor devuelto<br />
Uno de los siguientes:<br />
0 Domingo<br />
1 Lunes<br />
2 Martes<br />
3 Miércoles<br />
4 Jueves<br />
5 Viernes<br />
6 Sábado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL index = %getatr('win01': 'CAL1': 'WeekDayIdx')<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'WEEKDAYIDX' INDEX<br />
*<br />
452 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
Width<br />
Especifica el ancho del componente en pixels. Al cambiar el ancho de una ventana<br />
se genera un evento ReSize.<br />
Nota: El atributo Width no puede sobrepasar el ancho máximo, que viene<br />
determinado por la resolución de pantalla utilizada. Por ejemplo, no se<br />
puede crear un componente que tenga 800 pixels de ancho si se trabaja con<br />
una pantalla de 640 pixels de ancho.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
ActiveX Calendario Lienzo Recuadro de selección<br />
Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica<br />
Pulsador gráfico Recuadro de grupo Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen<br />
Bean Java Recuadro de lista Panel de medios Edición de múltiples<br />
líneas<br />
Cuaderno Interfaz ODBC/JDBC Recuadro de contorno Barra de progreso<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El ancho del componente en pixels<br />
Ejemplo de formato libre<br />
Aumentar el ancho de un componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL width = %getatr('win01': 'EF1': 'Width')<br />
*<br />
C EVAL %setatr('win01': 'EF1': 'Width') =<br />
width + 100<br />
*<br />
Ejemplo de formato fijo<br />
Ampliar un pulsador 200 pixels:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'EF1' GETATR 'WIDTH' OldWidth 2 0<br />
C OldTop ADD 200 NewWidth 2 0<br />
C<br />
*<br />
'EF1' SETATR NewWidth 'WIDTH'<br />
Capítulo 2. Atributos de componente 453
WindowMode<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Determina cómo se visualiza una ventana.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Ventana<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El valor de WindowMode puede ser uno de los siguientes:<br />
1 Maximizada - Muestra la ventana en su mayor tamaño posible<br />
2 Minimizada - Elimina la ventana del lugar de trabajo y la<br />
representa como un icono<br />
3 Restaurada - Devuelve la ventana al tamaño que tenía antes de ser<br />
minimizada o maximizada<br />
Nota: Cuando se restaura una ventana desde un estado maximizado, el<br />
atributo WindowMode puede indicar que la ventana sigue en estado<br />
maximizado aunque ya no lo esté.<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'win01': 'WindowMode') = 1<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'WIN01' SETATR 1 'WINDOWMODE'<br />
*<br />
454 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
WordWrap<br />
Determina si el texto entrado en un componente edición de múltiples líneas debe<br />
acomodarse al llegar al límite de palabras. Si WordWrap está inhabilitado, el texto<br />
continuará en la misma línea.<br />
Nota: Este atributo no funciona si se establece el estilo de desplazamiento<br />
horizontal.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Edición de múltiples<br />
líneas<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
El valor de WordWrap puede ser uno de los siguientes:<br />
0 Acomodar palabra inhabilitado<br />
1 Acomodar palabra habilitado<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL rc = %getatr('win01': 'MLE1': 'WordWrap')<br />
*<br />
Ejemplo de formato fijo<br />
Conmutar el estado de acomodación de palabra de un componente edición<br />
de múltiples líneas:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'MLE1' GETATR 'WORDWRAP' break 1 0<br />
*<br />
Capítulo 2. Atributos de componente 455
WrkStnName<br />
*Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Devuelve el nombre de la estación de trabajo.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
*Component<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
no<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL WRKN=%getatr('*component':'*component':'WrkStnName')<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C '*component' GETATR 'WRKSTNNAME' WRKN<br />
*<br />
456 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
X<br />
*Restricción: Este atributo sólo se utiliza en las aplicaciones Java.<br />
Especifica la coordenada x, en pixels, del menú emergente del espacio de<br />
coordenadas del invocador. Este atributo se utiliza junto con los atributos<br />
InvName, InvPname e Y.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Menú emergente<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'POP1':'X')=35<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'POP1' SETATR 35 'X'<br />
*<br />
Capítulo 2. Atributos de componente 457
XAxisLabel<br />
Es el texto que sirve de etiqueta del eje de la X.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GRA1': 'XAxisLabel') = label<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA' SETATR 'label' 'XAxisLabel'<br />
*<br />
458 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Y<br />
*Restricción: Este atributo sólo se utiliza en las aplicaciones Java.<br />
Especifica la coordenada y, en pixels, del menú emergente del espacio de<br />
coordenadas del invocador. Este atributo se utiliza junto con los atributos<br />
InvName, InvPname y X.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Menú emergente<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR no<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01':'POP1':'Y')=45<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'POP1' SETATR 45 'Y'<br />
*<br />
Capítulo 2. Atributos de componente 459
YAxisLabel<br />
Es el texto que sirve de etiqueta del eje de la Y.<br />
Tipo Serie<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GRA1': 'YAxisLabel') = label<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' SETATR 'label' 'YAxisLable'<br />
*<br />
460 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Year<br />
Indica el año del calendario que está seleccionado actualmente. Si se establece, se<br />
actualizará la fecha seleccionada del componente calendario para que los cambios<br />
queden reflejados.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
El año<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'Year') = 1998<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1998 'YEAR'<br />
*<br />
Capítulo 2. Atributos de componente 461
YearIdx<br />
Permite que el usuario defina datos en una fecha que no se visualiza en la página<br />
actual del calendario.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Valor permitido<br />
Valor de índice<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'CAL1': 'YearIdx') = 1998<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' SETATR 1998 'YEARIDX'<br />
*<br />
462 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
YearLen<br />
Indica el formato de visualización del año.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Calendario<br />
Códigos de operación<br />
SETATR*<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
*Nota: Puede definirse utilizando el cuaderno de propiedades en el<br />
diseñador GUI.<br />
Valor permitido<br />
YearLen puede tener uno de los valores siguientes:<br />
1 Año completo con cuatro dígitos<br />
2 Dos dígitos<br />
3<br />
Nota: Windows 95 visualiza ambos dígitos como la opción de<br />
relleno de dos dígitos. No hay distinción entre ambas.<br />
Dos dígitos, con un cero para los años que sólo tienen un dígito<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C<br />
*<br />
EVAL %setatr('win01': 'CAL1': 'YearLen') = 3<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'CAL1' GETATR 'YEARLEN' YearLen 1 0<br />
*<br />
Capítulo 2. Atributos de componente 463
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
Yinc<br />
Establece el número de marcas de escala que se utilizarán en el eje Y. El eje Y se<br />
dividirá en un número igual de incrementos, basándose en los valores mínimo y<br />
máximo permitidos.<br />
Tipo Numérico<br />
Se aplica a los componentes<br />
Gráfica<br />
Códigos de operación<br />
SETATR<br />
Operativo en tiempo de ejecución<br />
sí<br />
GETATR sí<br />
Ejemplo de formato libre<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C EVAL %setatr('win01': 'GRA1': 'YInc') = 20<br />
*<br />
Ejemplo de formato fijo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....8<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq----<br />
*<br />
C 'GRA1' SETATR 20 'YInc'<br />
*<br />
464 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
Capítulo 3. Eventos de componentes<br />
Activate<br />
BeanEvent<br />
Cuando un componente reconoce un evento (por ejemplo, cuando el usuario<br />
selecciona un pulsador), invoca la subrutina de acción que haya definido entre los<br />
códigos de operación BEGACT y ENDACT específicos en el programa. Si no se ha<br />
definido ninguna subrutina de acción para un evento, éste se pasa por alto. La<br />
ventana Subrutinas de acción visualiza qué subrutinas de acción se invocan<br />
mediante qué eventos de componente.<br />
En ciertos casos, el evento también hará que se pueda disponer de atributos de<br />
evento, que contienen datos relevantes. Puede acceder a estos atributos de evento<br />
desde el programa haciendo referencia a los mismos.<br />
Este capítulo describe los eventos de componente. Cada una de las descripciones<br />
contiene lo siguiente:<br />
v Una lista de componentes a los que se aplica el evento<br />
v Una descripción general del evento<br />
v Una lista de los atributos de evento que se aplican al evento (si los hay)<br />
v Un ejemplo (si los hay)<br />
Este evento se produce cuando una ventana se convierte en la ventana activa. Ello<br />
ocurre cuando el usuario pulsa en ella con el puntero del ratón o selecciona un<br />
componente de la misma.<br />
Se aplica a los componentes<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
* Restricción: Este evento no está soportado en las aplicaciones Windows.<br />
Este evento se produce siempre que se produce un evento de bean Java.<br />
Se aplica a los componentes<br />
Bean Java<br />
Atributos de evento<br />
%EventName %Part %Window<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 465
Change<br />
Click<br />
Este evento se produce al cambiar el contenido o el valor de un componente. Para<br />
cada tipo de componente, este evento se produce cuando se realiza el siguiente<br />
cambio:<br />
Recuadro de combinación<br />
El usuario escribe en el campo de entrada o selecciona un elemento de la<br />
lista desplegable.<br />
Campo de entrada<br />
El usuario escribe en el campo de entrada.<br />
Edición de múltiples líneas<br />
El usuario escribe en el campo de edición de múltiples líneas.<br />
Panel de medios<br />
El usuario cambia la posición de un graduador del panel.<br />
Graduador<br />
El usuario cambia la posición del graduador.<br />
Selector cíclico<br />
El usuario selecciona uno de los selectores cíclicos o escribe un valor en el<br />
campo de entrada.<br />
Subarchivo<br />
El usuario cambia los datos de una casilla de subarchivo y abandona la<br />
casilla.<br />
Tenga en cuenta que también puede modificarse el valor de un componente como<br />
resultado de establecer ciertos atributos, por ejemplo, el componente está definido<br />
como un componente destino y responde a un evento Link.<br />
Se aplica a los componentes<br />
Recuadro de<br />
Campo de entrada Panel de medios Edición de múltiples<br />
combinación<br />
líneas<br />
Graduador Selector cíclico Subarchivo<br />
Atributos de evento<br />
%ColNumber %EventName %Index %Part<br />
%Window<br />
Este evento se produce cuando el usuario coloca el puntero del ratón encima del<br />
componente y pulsa y suelta uno de los botones del ratón.<br />
El componente debe estar habilitado para recibir este evento.<br />
Nota: El evento Click no se señala si hay un componente Contenedor en la vista<br />
de Detalles.<br />
Se aplica a los componentes<br />
Calendario Lienzo Contenedor Campo de entrada<br />
Gráfica Imagen Edición de múltiples<br />
líneas<br />
Texto estático<br />
466 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Close<br />
Collapsed<br />
ColSelect<br />
Complete<br />
Atributos de evento<br />
%Button %EventName %MouseX %MouseY<br />
%Part %Window<br />
Este evento se produce solamente cuando una ventana se cierra a través del menú<br />
del sistema. El código de operación CLSWIN no tiene ningún efecto.<br />
Se aplica a los componentes<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce al contraer un nodo de un contenedor de la vista de árbol.<br />
Este evento se puede utilizar para cambiar el icono de un registro para que<br />
muestre el estado.<br />
Se aplica a los componentes<br />
Contenedor<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce al seleccionar una cabecera de columna con el ratón. Debe<br />
haber un componente contenedor en la vista de detalles. El atributo de evento<br />
%ColNumber devuelve el número de la columna seleccionada.<br />
Se aplica a los componentes<br />
Contenedor Subarchivo<br />
Atributos de evento<br />
%ColNumber %EventName %Part %Window<br />
Este evento se produce cuando el componente medios ha procesado un archivo de<br />
audio. El atributo de evento %Complete indica si la operación se ha realizado de<br />
manera correcta.<br />
Capítulo 3. Eventos de componentes 467
Create<br />
Data<br />
Se aplica a los componentes<br />
Medios<br />
Atributos de evento<br />
%Complete %EventName %Part %Window<br />
Este evento se produce cuando se crea el componente.<br />
En el caso de un componente ventana, el evento Create sólo después de que se<br />
hayan creado todos los componentes de dicha ventana y se hayan producido sus<br />
eventos Create.<br />
En este momento se pueden establecer los atributos del componente. Por ejemplo,<br />
tal vez le interese cambiar el valor por omisión de un campo de entrada antes de<br />
que el campo aparezca en la ventana.<br />
Se aplica a los componentes<br />
ActiveX Control de animación Calendario Lienzo<br />
Recuadro de selección Recuadro de<br />
Referencia a<br />
Contenedor<br />
combinación<br />
componente lógico<br />
Cliente DDE Campo de entrada Gráfica Pulsador gráfico<br />
Recuadro de grupo Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java<br />
Recuadro de lista Medios Panel de medios Barra de menús<br />
Opción de menú Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Página de cuaderno Interfaz ODBC/JDBC Recuadro de contorno Barra de progreso<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Barra de estado Subarchivo Submenú<br />
Temporizador Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando los datos están disponibles de la aplicación<br />
servidor en una conversación DDE. Se genera como resultado de un mandato<br />
Request, o si los datos han cambiado o el componente Cliente DDE está definido en<br />
una conversación de enlace dinámico con otro componente mediante el atributo<br />
AllowLink.<br />
Se aplica a los componentes<br />
Cliente DDE<br />
468 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
DblClick<br />
DeActivate<br />
Destroy<br />
Atributos de evento<br />
%Data %EventName %Item %Part<br />
%Window<br />
Este evento se produce cuando el usuario pulsa y suelta el botón del ratón dos<br />
veces de forma rápida y sucesiva.<br />
Se aplica a los componentes<br />
Calendario Lienzo Contenedor Campo de entrada<br />
Gráfica Imagen Edición de múltiples<br />
líneas<br />
Texto estático<br />
Atributos de evento<br />
%Button %EventName %MouseX %MouseY<br />
%Part %Window<br />
Este evento se produce cuando la ventana ya no está activa. Una ventana se<br />
desactiva cuando se activa otro componente.<br />
Este evento se produce al ejecutar un código de operación CLSWIN.<br />
Se aplica a los componentes<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando se cierra la ventana que contiene el componente,<br />
sea porque el usuario ha seleccionado la opción de menú Cerrar del menú del<br />
sistema en la ventana, o mediante el código de operación CLSWIN.<br />
Este evento también se producirá en todos los componentes del programa al<br />
terminar éste.<br />
Se aplica a los componentes<br />
ActiveX Control de animación Calendario Lienzo<br />
Recuadro de selección Recuadro de<br />
Referencia a<br />
Contenedor<br />
combinación<br />
componente lógico<br />
Cliente DDE Campo de entrada Gráfica Pulsador gráfico<br />
Recuadro de grupo Barra de<br />
desplazamiento<br />
horizontal<br />
Imagen Bean Java<br />
Recuadro de lista Medios Panel de medios Barra de menús<br />
Capítulo 3. Eventos de componentes 469
Drop<br />
DropDown<br />
Opción de menú Subarchivo de Edición de múltiples Cuaderno<br />
mensajes<br />
líneas<br />
Página de cuaderno Interfaz ODBC/JDBC Recuadro de contorno Barra de progreso<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Barra de estado Subarchivo Submenú<br />
Temporizador Barra de<br />
desplazamiento<br />
vertical<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce al arrastrar y soltar un objeto en este componente. El<br />
atributo DropEnable debe establecerse para este componente para que responda a<br />
este evento. Puede consultar el valor asociado con el componente soltado<br />
verificando el atributo de evento %Data.<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación*<br />
Edición de múltiples<br />
líneas<br />
Campo de entrada<br />
Texto estático<br />
Recuadro de lista* Subarchivo de<br />
mensajes<br />
* Restricción: Este evento no está soportado en tiempo de ejecución en las<br />
aplicaciones Java para este componente.<br />
Atributos de evento<br />
%Data %EventName %Part %Window<br />
* Restricción: Este evento no está soportado en las aplicaciones Java.<br />
Para un recuadro de combinación, este evento se produce cuando tiene lugar lo<br />
siguiente:<br />
v El usuario pulsa con el ratón en la flecha abajo que hay a la derecha del<br />
recuadro.<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Atributos de evento<br />
%EventName %Part %Window<br />
470 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Enter<br />
ExecuteAck<br />
Expanded<br />
En un recuadro de combinación, contenedor, recuadro de lista, subarchivo de<br />
mensajes y subarchivo, este evento se produce cuando:<br />
v El usuario efectúa una doble pulsación en el componente.<br />
v El usuario pulsa la tecla Intro cuando el componente tiene el foco y se ha<br />
seleccionado un elemento.<br />
En el caso de un botón de selección, este evento se produce cuando se efectúa una<br />
doble pulsación en el componente.<br />
Se aplica a los componentes<br />
Recuadro de<br />
Contenedor Recuadro de lista* Subarchivo de<br />
combinación<br />
mensajes<br />
Botón de selección Subarchivo<br />
* Restricción: Este evento no está soportado en tiempo de ejecución en las<br />
aplicaciones Java para este componente.<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando la aplicación servidor ha procesado un mandato<br />
Execute. El atributo de evento %Complete indica si la ejecución ha sido correcta.<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Atributos de evento<br />
%Complete %Data %EventName %Part<br />
%Window<br />
Este evento se produce al ampliar un nodo de un contenedor de la vista de árbol.<br />
Este evento se puede utilizar para cambiar el icono de un registro para que<br />
muestre el estado.<br />
Se aplica a los componentes<br />
Contenedor<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Capítulo 3. Eventos de componentes 471
FirstRec<br />
GotFocus<br />
KeyPress<br />
Este evento se produce cuando se selecciona el botón de ″primer registro″ de la<br />
barra de navegación.<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el componente recibe el foco de entrada. Esto se<br />
produce cuando el usuario mueve el cursor a un componente habilitado o si se ha<br />
establecido el foco en este componente mediante el atributo Focus. El componente<br />
debe estar habilitado para recibir este evento.<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Pulsador gráfico<br />
Recuadro de lista Edición de múltiples<br />
líneas<br />
Pulsador Graduador<br />
Selector cíclico Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando se pulsa una tecla y el componente tiene foco de<br />
entrada. El componente debe estar habilitado para recibir este evento.<br />
Nota: El atributo ReadOnly no debe estar establecido.<br />
Este evento sólo se produce para teclas de caracteres. Para manejar eventos<br />
generados mediante teclas que no sean de caracteres, como RePág y AvPág,<br />
consulte el evento VKeyPress.<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Edición de múltiples<br />
líneas<br />
Atributos de evento<br />
Contenedor Campo de entrada Recuadro de lista<br />
Subarchivo<br />
%Alt %Character %Control %EventName<br />
%Part %Shift %Window<br />
472 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
LastRec<br />
LClickTray<br />
Link<br />
LostFocus<br />
Este evento se produce cuando se selecciona el botón de ″último registro″ de la<br />
barra de navegación.<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando un usuario pulsa el icono de bandeja del sistema<br />
de la aplicación con el botón izquierdo del ratón. La aplicación debe estar<br />
registrada como aplicación de bandeja del sistema mediante la API<br />
Shell_NotifyIconA de Windows.<br />
Se aplica a los componentes<br />
Ventana Ventana con lienzo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
* Restricción: Este evento no está soportado en las aplicaciones Java.<br />
Este evento se produce cuando el componente está enlazado a un componente<br />
origen, utilizando el atributo AddLink, y el componente origen ha cambiado. El<br />
atributo AllowLink debe estar establecido para que el componente origen señale<br />
este evento.<br />
Se aplica a los componentes<br />
Campo de entrada Imagen Medios Panel de medios<br />
Graduador Selector cíclico Texto estático Temporizador<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el componente deja de tener el foco de entrada.<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Pulsador gráfico<br />
Capítulo 3. Eventos de componentes 473
MenuSelect<br />
MouseDown<br />
MouseEnter<br />
Recuadro de lista Edición de múltiples<br />
líneas<br />
Selector cíclico Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Pulsador Graduador<br />
Este evento se produce cuando el usuario selecciona una opción de menú con el<br />
ratón o con la tecla aceleradora.<br />
Este evento no significa que se haya marcado una opción de menú. Para<br />
determinar si se ha marcado o no un elemento de menú, consulte el atributo<br />
Checked del elemento.<br />
Se aplica a los componentes<br />
Opción de menú<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce al pulsar un botón del ratón.<br />
Se aplica a los componentes<br />
Calendario Lienzo Contenedor Campo de entrada<br />
Gráfica Edición de múltiples<br />
líneas<br />
Texto estático<br />
Atributos de evento<br />
%Button %EventName %MouseX %MouseY<br />
%Part %Window<br />
Este evento se produce al llevar por primera vez el puntero del ratón a un<br />
componente.<br />
Se aplica a los componentes<br />
Calendario Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor<br />
Campo de entrada Gráfica Pulsador gráfico Imagen<br />
Recuadro de lista Panel de medios Subarchivo de Edición de múltiples<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo<br />
474 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
MouseExit<br />
MouseMove<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce al sacar por primera vez el puntero del ratón de un<br />
componente.<br />
Se aplica a los componentes<br />
Calendario Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor<br />
Campo de entrada Gráfica Pulsador gráfico Imagen<br />
Recuadro de lista Panel de medios Subarchivo de Edición de múltiples<br />
mensajes<br />
líneas<br />
Pulsador Botón de selección Graduador Selector cíclico<br />
Texto estático Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el puntero del ratón se sitúa sobre un componente.<br />
Puede utilizar este evento para crear un área de información para informar al<br />
usuario sobre la función del componente.<br />
Se aplica a los componentes<br />
Calendario Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Campo de entrada Gráfica Pulsador gráfico<br />
Imagen Recuadro de lista Panel de medios Subarchivo de<br />
mensajes<br />
Edición de múltiples<br />
líneas<br />
Pulsador Botón de selección Graduador<br />
Selector cíclico Texto estático Subarchivo<br />
Atributos de evento<br />
%EventName %MouseX %MouseY %Part<br />
%Window.<br />
Ejemplo<br />
Crear un área de información cambiando el atributo Label de un<br />
componente texto estático cuando el puntero del ratón se sitúa en un<br />
componente:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq<br />
*<br />
C PB1 BEGACT MOUSEMOVE<br />
*<br />
Capítulo 3. Eventos de componentes 475
MouseUp<br />
Moved<br />
MthChange<br />
NextRec<br />
C ST1 SETATR 'Ends program'LABEL<br />
*<br />
C ENDACT<br />
*<br />
Este evento se produce al soltar un botón del ratón.<br />
Se aplica a los componentes<br />
Calendario Lienzo Contenedor Campo de entrada<br />
Gráfica Edición de múltiples<br />
líneas<br />
Texto estático<br />
Atributos de evento<br />
%Button %EventName %MouseX %MouseY<br />
%Part %Window<br />
Este evento se produce siempre que el usuario mueve una ventana.<br />
Se aplica a los componentes<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce al seleccionar otro mes pulsando con el ratón en una de las<br />
flechas de mes.<br />
Se aplica a los componentes<br />
Calendario<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando se selecciona el botón de ″siguiente registro″ de la<br />
barra de navegación.<br />
Se aplica a los componentes<br />
Subarchivo<br />
476 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Notify<br />
OCXEvent<br />
PageDown<br />
Atributos de evento<br />
%EventName %Part %Window<br />
En el cuaderno de propiedades del componente referencia a componente lógico,<br />
puede especificar un evento asociado con un componente determinado en una<br />
ventana especificada. Cuando se produce un evento, cuyo nombre coincide con el<br />
valor del atributo NotSrcEvt, en el componente especificado de la ventana<br />
especificada, se direcciona un evento Notify al componente referencia a<br />
componente lógico.<br />
Para que se señale un evento Notify, debe existir una subrutina de acción para el<br />
evento supervisado. No es necesario que la subrutina contenga código alguno. Si<br />
no hay ninguna subrutina de acción, el evento Notify no se producirá.<br />
Se aplica a los componentes<br />
Referencia a<br />
componente lógico<br />
Atributos de evento<br />
%EventName %Part %SrcCompName %SrcEvtName<br />
%SrcPartName %SrcWinName Ventana<br />
* Restricción: Este evento no está soportado en las aplicaciones Java.<br />
Este evento se produce siempre que se produce un evento de control de ActiveX.<br />
Se aplica a los componentes<br />
ActiveX<br />
Atributos de evento<br />
%EventName %Part %RealName %Window<br />
Este evento se produce cuando se pulsa la tecla Av Pág o cuando se pulsa con<br />
ratón en el área vacía hacia la parte inferior de la barra de desplazamiento vertical<br />
o si selecciona la barra de navegación del botón Av Pág.<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Capítulo 3. Eventos de componentes 477
PageEnd<br />
PageSelect<br />
PageTop<br />
PageUp<br />
Este evento se produce cuando se pulsa la tecla Av Pág o la tecla Flecha abajo,<br />
cuando se pulsa con el ratón en el área vacía de la parte inferior de la barra de<br />
desplazamiento vertical o cuando se arrastra el graduador por la barra de<br />
desplazamiento hasta el final de la lista de subarchivos cuando se visualiza el<br />
último registro de un subarchivo. En este caso, no se envía el evento PageDown,<br />
ya que ya se ha llegado al final de la lista. En su lugar, se envía un evento<br />
PageEnd.<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el usuario selecciona una página de cuaderno en<br />
una sección nueva del cuaderno mediante la pestaña correspondiente.<br />
El atributo de evento %Page devolverá el número de la página seleccionada.<br />
Se aplica a los componentes<br />
Página de cuaderno<br />
Atributos de evento<br />
%EventName %Page %Part %Window<br />
Este evento se produce cuando se pulsa la tecla Re Pág o la tecla Flecha arriba,<br />
cuando se pulsa con el ratón en el área vacía de la parte superior de la barra de<br />
desplazamiento vertical o cuando se arrastra el graduador por la barra de<br />
desplazamiento hasta el principio de la lista de subarchivos. En este caso, no se<br />
envía el evento PageUp.<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando se pulsa la tecla Re Pág, si el usuario pulsa el botón<br />
sobre el área vacía de la parte suyperior de la barra de desplazamiento vertical o<br />
bien si seleccione el botón de navegación Re Pág.<br />
478 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
PokeAck<br />
Popup<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando la aplicación servidor, en una conversación DDE,<br />
ha procesado un mandato Poke. El atributo de evento %Complete indica si el<br />
mandato poke se ha realizado satisfactoriamente.<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Atributos de evento<br />
%Complete %Data %EventName %Item<br />
%Part %Window<br />
Ejemplo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq<br />
*<br />
C<br />
*<br />
DDE1 BEGACT POKEACK<br />
C %COMPLETE IFNE *ZERO<br />
C<br />
*<br />
'Poke failed' DSPLY style X<br />
C<br />
*<br />
ENDIF<br />
C<br />
*<br />
ENDACT<br />
Este evento se produce cuando el puntero del ratón se sitúa sobre un componente<br />
y se pulsa el botón derecho del ratón.<br />
Se aplica a los componentes<br />
Lienzo Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor<br />
Campo de entrada Pulsador gráfico Recuadro de lista Panel de medios<br />
Subarchivo de Edición de múltiples Pulsador Botón de selección<br />
mensajes<br />
líneas<br />
Graduador Selector cíclico Texto estático Subarchivo<br />
Atributos de evento<br />
%ColNumber %EventName %Index %MouseX<br />
%MouseY %Part %Window<br />
Capítulo 3. Eventos de componentes 479
Press<br />
PrevRec<br />
RClickTray<br />
ReSize<br />
Este evento se produce cuando el usuario pulsa el botón del ratón en el<br />
componente o cuando pulsa la tecla Intro cuando el componente tiene el foco de<br />
entrada.<br />
Se aplica a los componentes<br />
Pulsador gráfico Panel de medios Pulsador<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando se selecciona el botón de ″registro anterior″ de la<br />
barra de navegación.<br />
Se aplica a los componentes<br />
Subarchivo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando un usuario pulsa el icono de bandeja del sistema<br />
de la aplicación con el botón derecho del ratón. La aplicación debe estar registrada<br />
como aplicación de bandeja del sistema mediante la API Shell_NotifyIconA de<br />
Windows.<br />
Se aplica a los componentes<br />
Ventana Ventana con lienzo<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando se ha cambiado el tamaño del componente. Por<br />
ejemplo, puede producirse si el usuario cambia el tamaño de una ventana<br />
utilizando el borde para ajustar el tamaño, o si cambia el tamaño del componente<br />
estableciendo el atributo Height o Width.<br />
Puede utilizar este evento para reubicar o mover componentes de una ventana<br />
cuando el usuario cambie el tamaño de la ventana.<br />
Durante el evento ReSize, los atributos Height y Width contienen el tamaño actual<br />
de la ventana, mientras que los atributos de evento %NewHeight y %NewWidth<br />
contienen el tamaño de la ventana una vez completado el evento ReSize.<br />
480 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Scroll<br />
Select<br />
ShutDown<br />
Se aplica a los componentes<br />
Ventana<br />
Atributos de evento<br />
%EventName %NewHeight %NewMode* %NewWidth<br />
%Part %Window<br />
*Nota: Consulte la descripción del atributo si desea saber cuáles son las<br />
restricciones.<br />
Este evento se produce al pulsar la flecha de desplazamiento de un componente<br />
barra de desplazamiento horizontal o vertical. El atributo de evento %Position<br />
contiene la posición del recuadro de desplazamiento cuando el usuario deja de<br />
desplazarse.<br />
Se aplica a los componentes<br />
Barra de<br />
desplazamiento<br />
horizontal<br />
Atributos de evento<br />
Barra de<br />
desplazamiento<br />
vertical<br />
%EventName %Part %Position %Window<br />
Este evento se produce cuando el usuario selecciona un componente pulsando<br />
sobre el mismo con el ratón o utilizando las teclas de flechas. En un recuadro de<br />
combinación, contenedor, recuadro de lista, subarchivo de mensajes y subarchivo,<br />
este evento se produce cuando se selecciona un elemento de la lista.<br />
Se aplica a los componentes<br />
Recuadro de selección Recuadro de<br />
combinación<br />
Contenedor Recuadro de lista<br />
Subarchivo de<br />
mensajes<br />
Botón de selección Subarchivo<br />
Atributos de evento<br />
%ColNumber %EventName %Index %Part<br />
%Window<br />
Este evento se produce cuando el constructor GUI finaliza y se ha especificado el<br />
handle de ventana en el mandato de conector NotifyOnClose. Este evento se puede<br />
utilizar para supervisar todos los conectores que se ejecutan desde el constructor<br />
GUI y además cerrarlos.<br />
Capítulo 3. Eventos de componentes 481
SpinDown<br />
SpinEnd<br />
SpinUp<br />
Terminate<br />
Se aplica a los componentes<br />
Ventana<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el usuario selecciona el botón de flecha abajo de un<br />
componente selector cíclico.<br />
Se aplica a los componentes<br />
Selector cíclico<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el usuario suelta el botón de flecha arriba o de<br />
flecha abajo de un componente selector cíclico.<br />
Se aplica a los componentes<br />
Selector cíclico<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el usuario selecciona el botón de flecha arriba de<br />
un componente selector cíclico.<br />
Se aplica a los componentes<br />
Selector cíclico<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Este evento se produce cuando el servidor, en una conversación DDE, ha solicitado<br />
que termine la conversación, o cuando el componente cliente DDE tiene su atributo<br />
DDEMode establecido en Terminate.<br />
482 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Tick<br />
Timeout<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Ejemplo<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq<br />
*<br />
C PB1 BEGACT TERMINATE<br />
*<br />
C 'Terminating' DSPLY STYLE X<br />
*<br />
C ENDACT<br />
*<br />
Este evento se produce cada vez que transcurre el valor de intervalo del<br />
temporizador. El atributo Multiplier también determina cuándo se generará el<br />
evento Tick.<br />
Se aplica a los componentes<br />
Temporizador<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Ejemplo<br />
Actualizar un componente texto estático con el valor de impulso actual de<br />
un componente temporizador:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq<br />
*<br />
C<br />
*<br />
TIMER1 BEGACT TICK<br />
C 'TIMER1' GETATR TIMERTICKS timerticks 6 0<br />
C<br />
*<br />
ST1 SETATR timerticks 'LABEL'<br />
C<br />
*<br />
ENDACT<br />
Este evento se produce cuando no se ha establecido la conversación DDE en el<br />
tiempo definido por el atributo TimeOut.<br />
Se aplica a los componentes<br />
Cliente DDE<br />
Atributos de evento<br />
%EventName %Part %Window<br />
Ejemplo<br />
Capítulo 3. Eventos de componentes 483
VKeyPress<br />
YearChange<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq<br />
*<br />
C DDE1 BEGACT TIMEOUT<br />
*<br />
C 'DDE Failed!' DSPLY STYLE X<br />
C ENDACT<br />
*<br />
Este evento se produce cuando se pulsa una tecla de mandato. Como ejemplos de<br />
teclas de mandato se pueden citar AvPág, Pausa y Control. Para obtener una<br />
descripción del valor devuelto, consulte el atributo de evento %Character.<br />
Se aplica a los componentes<br />
Recuadro de<br />
combinación<br />
Edición de múltiples<br />
líneas<br />
Atributos de evento<br />
Contenedor Campo de entrada Recuadro de lista<br />
Subarchivo<br />
%Alt %Character %Control %EventName<br />
%Part %Shift %Window<br />
Ejemplo<br />
Borrar un campo de entrada si se pulsa F5 cuando el campo tiene el foco<br />
de entrada:<br />
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+.<br />
CSRN01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq<br />
*<br />
C<br />
*<br />
EF1 BEGACT VKEYPRESS<br />
C %character IFEQ '29'<br />
C 'EF1' SETATR *BLANKS 'TEXT'<br />
C<br />
*<br />
ENDIF<br />
C<br />
*<br />
ENDACT<br />
Este evento se produce al seleccionar otro año pulsando con el ratón en una de las<br />
flechas de año o en una flecha de mes de modo que se cambie el año.<br />
Se aplica a los componentes<br />
Calendario<br />
Atributos de evento<br />
%EventName %Part %Window<br />
484 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
Capítulo 4. Atributos de eventos<br />
Los atributos de evento contienen datos relevantes para el evento que se está<br />
manejando. La aplicación del usuario no puede modificarlos. Deben estar definidos<br />
en la especificación de Definición con el tipo y la longitud correctos. La tabla<br />
siguiente lista los atributos de evento con sus tipos de datos y longitudes<br />
correspondientes:<br />
Atributo de evento Tipo de datos Longitud<br />
%Alt Numérico 1<br />
%Button Numérico 1<br />
%Character Serie 1¹<br />
%ColNumber Numérico *<br />
%Complete Numérico 1<br />
%Control Numérico 1<br />
%Data Serie *<br />
%EventName Serie 10<br />
%Index Numérico *<br />
%Item Serie *<br />
%MouseX Numérico 4<br />
%MouseY Numérico 4<br />
%NewHeight Numérico 4<br />
%NewMode Numérico 1<br />
%NewWidth Numérico 4<br />
%Page Numérico 3<br />
%Part Serie 10<br />
%Position Numérico 4<br />
%RealName Serie 10<br />
%Shift Numérico 1<br />
%SrcCompName Serie 10<br />
%SrcEvtName Serie 10<br />
%SrcPartName Serie 10<br />
%SrcWinName Serie 10<br />
%Window Serie 10<br />
* Defina la longitud como sea necesario.<br />
¹Para VKeyPress, la longitud es 2.<br />
Ejemplo:<br />
DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords++++++++++++++++++++++++++++<br />
*<br />
* Declarar el atributo de evento %Button<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 485
%Alt<br />
%Button<br />
%Character<br />
D %Button S 1P 0<br />
*<br />
* Declarar el atributo de evento %Data<br />
D %Data S 32A<br />
Este capítulo describe los atributos de evento. Cada una de las descripciones<br />
contiene lo siguiente:<br />
v El tipo de datos del atributo de evento<br />
v Una descripción general del atributo de evento<br />
v Una lista de los eventos a los que se aplica el atributo<br />
Indica si la tecla Alt estaba pulsada cuando se ha producido el evento:<br />
0 La tecla Alt no se ha pulsado<br />
1 Se ha pulsado la tecla Alt<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
KeyPress VKeyPress<br />
Indica qué botón del ratón estaba pulsado durante el evento:<br />
1 Botón 1<br />
2 Botón 2<br />
3 Botón 3<br />
4 Botones 1y2<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
Click DblClick MouseDown MouseUp<br />
Código de carácter generado por el evento.<br />
Durante el evento VKeyPress, el atributo de evento %Character se devolverá como<br />
un valor que representa la tecla no de carácter que se ha pulsado. Los valores son<br />
los siguientes:<br />
00 – Esc 13 – Fin 25 – Inter 37 – F14<br />
01 – Tabulador →| 14 – Retroceso de<br />
página<br />
26–F2 38–F15<br />
02 – Tabulador |← 15 – Avance de<br />
página<br />
27–F3 39–F16<br />
03 – Espacio 16 – ← (Izquierda) 28 – F4 40 – F17<br />
04 – ←Retroceso 17 – → (Derecha) 29 – F5 41 – F18<br />
05 – Intro (teclado<br />
numérico)<br />
18 – ↑ (Arriba) 30 – F6 42 – F19<br />
486 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
%ColNumber<br />
%Complete<br />
%Control<br />
06 – Intro 19 – ↓ (Abajo) 31 – F7 43 – F20<br />
07 – Mayús 20 – Bloqueo<br />
Mayúsculas<br />
32–F8 44–F21<br />
08 – Control 21 – Bloqueo<br />
Numérico<br />
33–F9 45–F22<br />
09 – Alt 22 – Bloqueo Mayús 34 – F11 46 – F23<br />
10 – Insertar 23 – Pausa 35 – F12 47 – F24<br />
11 – Suprimir<br />
12 – Inicio<br />
24 – PetSis 36 – F13 56 – Alt<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
Keypress VKeyPress<br />
Devuelve el número de columna para un componente subarchivo o contenedor.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
Change ColSelect Popup Select<br />
Indica si la operación anterior se ha realizado de manera satisfactoria o no:<br />
0 Operación no satisfactoria<br />
1 Operación satisfactoria.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
Complete ExecuteAck PokeAck<br />
Indica si la tecla Control estaba pulsada cuando se ha producido el evento:<br />
0 La tecla Control no se ha pulsado.<br />
1 La tecla Control se ha pulsado.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
KeyPress VKeyPress<br />
Capítulo 4. Atributos de eventos 487
%Data<br />
%EventName<br />
%Index<br />
%Item<br />
%MouseX<br />
Contiene los datos enviados por una aplicación de servidor como respuesta a un<br />
mandato Request. El contenido y la estructura de estos datos los determina la<br />
aplicación servidor.<br />
Este atributo de evento también está disponible con el evento PokeAck. Contendrá<br />
los datos originales con los que se ha efectuado la operación Poke.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
Data Drop ExecuteAck PokeAck<br />
Devuelve el nombre del evento.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
A todos<br />
Devuelve el número de índice del registro en el que está situado el puntero del<br />
ratón cuando se produce un evento Popup o Select. No es preciso que el registro<br />
tenga el foco.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
Change Popup Select<br />
Contiene el nombre del elemento que participa actualmente en una conversación<br />
DDE.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
Data PokeAck<br />
La coordenada X de la ubicación actual del puntero del ratón en el componente<br />
cuando se ha producido el evento. Se expresa en pixels. Es un valor comprendido<br />
entre cero y la anchura del componente. El valor cero representa el borde izquierdo<br />
del componente.<br />
Nota: En el caso del evento MouseMove, esta coordenada es relativa al escritorio.<br />
Tipo Numérico<br />
488 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
%MouseY<br />
%NewHeight<br />
%NewMode<br />
%NewWidth<br />
Eventos a los que puede aplicarse<br />
Click DblClick MouseDown MouseMove<br />
MouseUp Popup<br />
La coordenada Y de la ubicación actual del puntero del ratón en el componente<br />
cuando se ha producido el evento. Se expresa en pixels. Es un valor comprendido<br />
entre cero y la altura del componente. El valor cero representa el borde inferior del<br />
componente.<br />
Nota: En el caso del evento MouseMove, esta coordenada es relativa al escritorio.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
Click DblClick MouseDown MouseMove<br />
MouseUp Popup<br />
Es la altura del componente después de cambiar el tamaño del mismo.<br />
Nota: El atributo Height del componente no cambia hasta que la subrutina de<br />
acción correspondiente al evento ReSize ha terminado.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
ReSize<br />
* Restricción: Este atributo no está soportado en las aplicaciones Java.<br />
Indica en qué modalidad se establecerá la ventana:<br />
1 Maximizada<br />
2 Minimizada<br />
3 Restaurada<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
ReSize<br />
Es la anchura del componente después de cambiar el tamaño del mismo.<br />
Capítulo 4. Atributos de eventos 489
%Page<br />
%Part<br />
%Position<br />
%RealName<br />
%Shift<br />
Nota: El atributo Width del componente no cambia hasta que la subrutina de<br />
acción correspondiente al evento ReSize ha terminado.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
ReSize<br />
Devuelve el número de página de la página seleccionada cuando se produce el<br />
evento PageSelect.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
PageSelect<br />
Contiene el nombre del componente que genera el evento.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
A todos<br />
Devuelve la posición actual del recuadro de desplazamiento cuando el usuario deja<br />
de desplazarse.<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
Scroll<br />
Devuelve el nombre real del evento de ActiveX que se produce.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
OCXEvent<br />
Indica si se ha pulsado la tecla Mayús cuando se ha producido el evento:<br />
0 La tecla Mayús no se ha pulsado<br />
1 Se ha pulsado la tecla Mayús<br />
490 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
|<br />
%SrcCompName<br />
%SrcEvtName<br />
%SrcPartName<br />
%SrcWinName<br />
Tipo Numérico<br />
Eventos a los que puede aplicarse<br />
KeyPress VKeyPress<br />
Cuando se envía un evento Notify al componente referencia a componente lógico,<br />
este atributo de evento devuelve el nombre del componente lógico del evento de<br />
notificación. Si se utiliza un componente referencia a componente lógico para<br />
supervisar varios eventos, este atributo de evento puede determinar el origen<br />
exacto del evento que desencadena el evento Notify utilizando el atributo<br />
%SrcCompName en combinación con los atributos %SrcWinName, %SrcPartName<br />
y %SrcEvtName.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
Notify<br />
Cuando se envía un evento Notify al componente referencia a componente lógico,<br />
este atributo de evento devuelve el nombre del evento que se estableció en el<br />
atributo NotSrcEvt, junto con un componente y una ventana determinados, para<br />
desencadenar un evento Notify al componente referencia a componente lógico.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
Notify<br />
Cuando se envía un evento Notify al componente referencia a componente lógico,<br />
este atributo de evento devuelve el nombre del componente que se estableció en el<br />
atributo NotSrcPart, junto con un componente y una ventana determinados, para<br />
desencadenar un evento Notify al componente referencia a componente lógico.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
Notify<br />
Cuando se envía un evento Notify al componente referencia a componente lógico,<br />
este atributo de evento devuelve el nombre de la ventana que se estableció en el<br />
atributo NotSrcWin, junto con un componente y un evento determinados, para<br />
desencadenar un evento Notify al componente referencia a componente lógico.<br />
Tipo Serie<br />
Capítulo 4. Atributos de eventos 491
%Window<br />
Eventos a los que puede aplicarse<br />
Notify<br />
Indica el nombre de la ventana que contiene el componente que ha generado el<br />
evento.<br />
Tipo Serie<br />
Eventos a los que puede aplicarse<br />
A todos<br />
492 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Glosario<br />
A<br />
Este glosario incluye términos y definiciones de:<br />
v El American National Dictionary for Information Systems ANSI X3.172-1990,<br />
copyright 1990 del American National Standards Institute (ANSI). Si desea<br />
adquirir una copia de esta publicación debe dirigirse al American National<br />
Standards Institute, 1430 Broadway, New York, New York, 10018. Las<br />
definiciones se especifican mediante el símbolo (A) después de las mismas.<br />
v El Information Technology Vocabulary desarrollado por el Subcomité 1, Comité<br />
Técnico Conjunto 1, de International Organization for Standardization y el<br />
International Electrotechnical Committee (ISO/IEC JTC1/SC1). Las definiciones<br />
de las partes publicadas de este vocabulario se identifican mediante el símbolo<br />
(|) después de las mismas; las definiciones tomadas de borradores de estándares<br />
internacionales, borradores del comité y documentos de trabajo desarrollados<br />
por ISO/IEC JTC1/SC1 se identifican mediante el símbolo (T) después de las<br />
mismas, lo cual indica que aún no se ha alcanzado un acuerdo definitivo entre<br />
los Organismos Nacionales integrantes del SC1.<br />
v <strong>IBM</strong> Dictionary of Computing, New York: McGraw-Hill, 1994.<br />
v Object-Oriented Interface Design <strong>IBM</strong> Common User Interface Guidelines,<br />
SC34-4399-00, Carmel, IN: Que Corporation, 1992.<br />
acción. (1) Sinónimo de subrutina de acción. (2) Programa ejecutable o archivo de mandatos utilizado para manipular<br />
los componentes de un proyecto o participar en una construcción.<br />
acción por omisión. Acción que se efectúa cuando se realiza otra como, por ejemplo, pulsar la tecla Intro.<br />
alias de servidor. Nombre que el usuario define y que puede utilizarse en lugar del nombre del servidor.<br />
ancla. Cualquier componente que se utiliza como punto de referencia para alinear, dimensionar y espaciar otros<br />
componentes.<br />
anotaciones de error. Realiza un seguimiento de los errores en las anotaciones de error. El editor le lleva al lugar<br />
del código fuente en el que se ha producido el error.<br />
API. Interfaz de programación de aplicaciones.<br />
aplicación. Un grupo de componentes de software utilizados para efectuar tareas de usuario específicas en un<br />
sistema.<br />
applet. Programa escrito en Java que se ejecuta dentro de un navegador compatible con Java o AppletViewer.<br />
archivo. Grupo de datos relacionados que se almacenan y se recuperan mediante un nombre asignado. Un archivo<br />
puede incluir información que inicia un programa (objeto de archivo de programa), contiene texto o gráficos (objeto<br />
de archivo de datos) o procesa una serie de mandatos (archivo por lotes).<br />
archivo de mensajes. Archivo que contiene mensajes de aplicación. Este archivo se crea a partir del archivo fuente<br />
de mensajes durante el proceso de construcción. Véase también construir.<br />
archivo de ondas. Archivo utilizado para sonidos audio en un dispositivo de forma de onda.<br />
archivo de Recurso de Presentación de Información (IPF). Archivo en el que se almacena el fuente de la ayuda de<br />
la aplicación.<br />
archivo MIDI. Archivo de la Interfaz Digital de Instrumentos Musicales.<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 493
archivos JAR (.jar). En Java, abreviatura de Java ARchive. Es un formato de archivo que se utiliza para agregar<br />
varios archivos en uno.<br />
área común. Área de almacenamiento proporcionada por el sistema para retener datos temporalmente. Los datos del<br />
área común están disponibles para otras aplicaciones.<br />
área de cliente. La parte de la ventana que es el espacio de trabajo del usuario donde éste teclea información y<br />
selecciona opciones de campos de selección. En ventanas primarias, el área en la que un programador de aplicaciones<br />
presenta los objetos con los que trabaja el usuario.<br />
área de información. Componente de una ventana en el que se visualiza información sobre el objeto o la opción en<br />
los que se encuentra el cursor. El área de información también puede incluir un mensaje sobre la conclusión normal<br />
de un proceso. Véase también barra de estado.<br />
área de trabajo. Área utilizada para organizar objetos de acuerdo a las tareas del usuario. Cuando un usuario cierra<br />
un área de trabajo, todas las ventanas abiertas a partir de objetos contenidos en el área de trabajo se eliminan del<br />
lugar de trabajo.<br />
Arquitectura Common User Access (arquitectura CUA). Directrices para el diálogo entre una persona y una<br />
estación de trabajo o un terminal.<br />
arquitectura CUA. Arquitectura de Acceso Común de Usuario.<br />
arrastrar. Mover o copiar un objeto utilizando el ratón. Por ejemplo, un usuario puede arrastrar el borde de una<br />
ventana para hacerla más grande pulsando un botón del ratón y manteniéndolo pulsado mientras mueve el ratón.<br />
Véase también arrastrar y soltar.<br />
arrastrar y soltar. Manipular directamente un objeto moviéndolo y colocándolo en cualquier lugar utilizando el<br />
ratón.<br />
ASCII (American National Standard Code for Information Interchange). Código estándar, que se compone de un<br />
juego de caracteres codificados de 7 bits (8 bits incluyendo comprobación de paridad), que se utiliza para el<br />
intercambio de información entre sistemas de proceso de datos, sistemas de comunicación de datos y equipo<br />
asociado. El juego de caracteres ASCII se compone de caracteres de control y caracteres gráficos. (A)<br />
atenuado. Atenuación del contraste visual de un componente que indica que el usuario no puede seleccionar ni<br />
manipular directamente ese componente.<br />
B<br />
barra de desplazamiento. Componente que muestra a un usuario que hay más información disponible en una<br />
dirección determinada y que puede moverse para visualizar dicha información utilizando el ratón o las teclas de<br />
página.<br />
barra de estado. Componente de una ventana que visualiza información que indica el estado de la vista o del objeto<br />
actuales. Véase también área de información.<br />
barra de herramientas. Menú que contiene una o más opciones gráficas que representan las acciones que un usuario<br />
puede efectuar utilizando el ratón.<br />
barra de títulos. Área en la parte superior de cada ventana que contiene el símbolo del menú del sistema.<br />
base de datos. (1) Grupo de datos con una estructura determinada para aceptar, almacenar y proporcionar, previa<br />
petición, datos para varios usuarios. (T) (2) Todos los archivos de datos almacenados en el sistema.<br />
Biblioteca de enlace dinámico (DLL). Archivo que contiene código ejecutable y datos enlazados de manera lógica a<br />
un programa durante el tiempo de carga o el de ejecución, en lugar de durante el enlace. Varias aplicaciones pueden<br />
compartir a la vez el código y los datos de una biblioteca de enlace dinámico.<br />
BMP. Extensión de archivo de un archivo bitmap.<br />
borde de dimensionamiento. Borde de un marco alrededor de un componente (o conjunto de componentes) que se<br />
selecciona para cambiar el tamaño del componente (o del conjunto de componentes) utilizando el ratón o el teclado.<br />
494 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
orde de selección. Borde visual que aparece alrededor de un componente de VA<strong>RPG</strong> o de un componente creado<br />
por el usuario, que permite moverlo con el ratón o el teclado.<br />
botón. (1) Mecanismo en un dispositivo de puntero, como un ratón, utilizado para solicitar o iniciar una acción. (2)<br />
Mecanismo gráfico en una ventana que, cuando se selecciona, produce una acción. Por ejemplo, el pulsador Bien que,<br />
al seleccionarse, inicia una acción.<br />
botón 2 del ratón. Por omisión, el botón derecho del ratón; se utiliza para manipular.<br />
botón 1 del ratón. Por omisión, el botón izquierdo del ratón; se utiliza para seleccionar.<br />
botón de manipulación. Véase botón 2 del ratón.<br />
botón de maximizar. Botón en la parte más a la derecha de una barra de título sobre el que un usuario pulsa el<br />
botón del ratón para aumentar el tamaño de la ventana lo máximo posible. Compárese con botón de minimizar y botón<br />
de ocultar.<br />
botón de minimizar. Botón, ubicado junto al botón que está más a la derecha en una barra de título, que reduce el<br />
tamaño de la ventana lo máximo posible. Compárese con botón de maximizar y botón de ocultar.<br />
botón de ocultar. Botón en una barra de título sobre el que un usuario pulsa el botón del ratón para suprimir una<br />
ventana del lugar de trabajo sin cerrarla. Cuando la ventana está oculta, el estado de la misma, indicado en la lista de<br />
ventanas, cambia. Compárese con botón de maximizar y botón de minimizar.<br />
botón de ratón. Mecanismo en un ratón para seleccionar opciones, iniciar acciones o manipular objetos con el<br />
puntero. Véase también botón 1 del ratón y botón 2 del ratón.<br />
botón de restaurar. Botón que aparece en la esquina más a la derecha de la barra de título después de haber<br />
maximizado una ventana. Cuando se selecciona el botón de restaurar, la ventana vuelve a tener el tamaño y la<br />
posición que tenía antes de que se maximizara. Véase también botón de maximizar.<br />
botón de selección. Véase botón 1 del ratón.<br />
C<br />
campo. (1) Área identificable en una ventana, como un campo de entrada, en la que un usuario escribe texto. (2)<br />
Grupo de bytes relacionados, como un nombre o una cantidad, que se trata como una unidad en un registro.<br />
campo de referencia. Campo de la base de datos de AS/400 cuyas características un componente campo de entrada<br />
puede heredar.<br />
campo de subarchivo. Campo utilizado para definir campos en un componente subarchivo. Véase también campo<br />
subarchivo.<br />
Capa de Sockets Segura (SSL). Esquema de seguridad de gran aceptación desarrollado por Netscape<br />
Communications Corp. y RSA Data Security, Inc. SSL permite al cliente autenticarse en el servidor y cifrar todos los<br />
datos y peticiones. El URL de un servidor seguro protegido mediante SSL empieza por https en lugar de http.<br />
carpeta destino. Objeto en el que se coloca el icono que representa una aplicación VA<strong>RPG</strong>.<br />
catálogo de componentes. Espacio de almacenamiento para todos los componentes utilizados para crear interfaces<br />
gráficas de usuario para aplicaciones VA<strong>RPG</strong>.<br />
cliente. (1) Sistema que depende de un servidor para obtener datos. (2) La PWS donde se ejecutan las aplicaciones<br />
VA<strong>RPG</strong>. Véase también cliente DDE.<br />
cliente DDE. Aplicación que inicia una conversación DDE. Compárese con servidor DDE. Véase también componente<br />
cliente DDE y conversación DDE.<br />
cliente/servidor. Modelo de interacción en el proceso de datos distribuidos en el que un programa en una ubicación<br />
envía una petición a un programa en otra ubicación y espera una respuesta. El programa que efectúa la petición<br />
recibe el nombre de cliente; y el programa que responde, servidor. Véase también cliente, servidor, cliente DDE, servidor<br />
DDE.<br />
Glosario 495
compilar. Convertir un programa fuente en un programa ejecutable (programa objeto).<br />
complemento. Función creada por el usuario o un proveedor externo que se puede utilizar en los programas<br />
VA<strong>RPG</strong>.<br />
componente barra de desplazamiento horizontal. Componente que añade una barra de desplazamiento horizontal<br />
a una ventana. Este componente permite desplazarse por un panel de información de izquierda a derecha o<br />
viceversa.<br />
componente barra de desplazamiento vertical. Componente que añade una barra de desplazamiento vertical a una<br />
ventana. Este componente permite desplazarse por un panel de información verticalmente.<br />
componente barra de estado. Componente de una ventana que puede visualizar información adicional sobre un<br />
proceso o acción de la ventana.<br />
componente barra de menús. Área que está junto a la parte superior de la ventana, debajo de la barra de título y<br />
encima del resto de la ventana, que contiene opciones que proporcionan acceso a otros menús. En <strong>VisualAge</strong> <strong>RPG</strong>, se<br />
señala y pulsa un componente barra de menús de la paleta de componentes o del catálogo de componentes y se<br />
suelta en una ventana de diseño.<br />
componente barra de progreso. Componente que se puede utilizar para indicar el progreso de un proceso como,<br />
por ejemplo, copiar archivos, cargar una base de datos, etc. de forma gráfica.<br />
componente bean Java. Componente que permite a las aplicaciones VA<strong>RPG</strong> acceder a los JavaBean de Sun<br />
Microsystem.<br />
componente botón de selección. Círculo con texto al lado. Los botones de selección se combinan para mostrar a un<br />
usuario un conjunto fijo de opciones de entre las que sólo puede seleccionarse una. Cuando se selecciona una opción,<br />
el círculo se rellena parcialmente. Puede señalar y pulsar un componente botón de selección de la paleta de<br />
componentes o del catálogo de componentes y soltarlo en una ventana de diseño.<br />
componente calendario. Componente que añade un calendario que puede ser modificado por el usuario para incluir<br />
texto, color u otros atributos.<br />
componente campo de entrada. Área de una pantalla donde un usuario pueden entrar información, a menos que el<br />
campo sea de sólo lectura. Normalmente, los límites de un campo de entrada están indicados. En <strong>VisualAge</strong> <strong>RPG</strong>, se<br />
señala y pulsa un componente campo de entrada de la paleta de componentes o del catálogo de componentes y se<br />
suelta en una ventana de diseño.<br />
componente cliente DDE. Componente utilizado para intercambiar datos con otras aplicaciones como, por ejemplo,<br />
aplicaciones de hoja de cálculo, que soportan el protocolo de intercambio de datos dinámico (DDE).<br />
componente *component. Componente que es la “representación de componente” del componente lógico. Para cada<br />
componente lógico se crea un componente *component, que no se visualiza.<br />
componente contenedor. Componente que almacena registros relacionados y los visualiza en una vista de detalles,<br />
de icono o de árbol.<br />
componente control de animación. Componente que permite reproducir archivos de vídeo, con la extensión AVI, en<br />
Windows, o reproducir secuencias GIF de animación en aplicaciones Java.<br />
componente cuaderno. Representación gráfica de un cuaderno. Puede añadir páginas de cuaderno al componente<br />
cuaderno y agrupar las páginas en secciones separadas por hojas separadoras con pestañas. En Windows, a veces se<br />
hace referencia al cuaderno como el control de pestaña de Windows. Véase también componente página de cuaderno y<br />
componente página de cuaderno con lienzo.<br />
componente de activeX. Componente que añade objetos de control ActiveX al proyecto. Las aplicaciones VA<strong>RPG</strong><br />
pueden acceder así a los atributos y supervisar si hay eventos.<br />
componente definido por el usuario. Componente, que se compone de uno o más componentes que el usuario ha<br />
personalizado, que se guarda en la paleta de componentes o en el catálogo de componentes para volver a utilizarlo.<br />
Cuando está en la paleta o en el catálogo, este componente se puede señalar y pulsar en la ventana de diseño tal<br />
como se haría con otro componente de VA<strong>RPG</strong>.<br />
496 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
componente destino. Componente que, siempre que cambia el estado del componente fuente, recibe un evento link<br />
(de enlace) del componente fuente.<br />
componente de subarchivo. Componente utilizado para visualizar una lista de registros que constan de varios<br />
campos. Este componente es similar a un subarchivo de AS/400. Véase también campo de subarchivo.<br />
componente edición de múltiples líneas (MLE). Componente que representa un campo de entrada que permite al<br />
usuario entrar varias líneas de texto.<br />
componente elemento de menú. Componente que es un elemento gráfico o de texto en un menú. Cuando el<br />
usuario desea trabajar con un objeto, selecciona un elemento de menú.<br />
componente fuente. Componente que, siempre que cambia su estado, puede notificarlo a los componentes de<br />
destino. Un componente origen puede tener varios destinos.<br />
componente graduador. Componente visual de una interfaz de usuario que representa una cantidad y su relación<br />
con el rango de posibles valores para esa cantidad. El usuario también puede modificar el valor de la cantidad.<br />
Puede señalar y pulsar un componente graduador de la paleta de componentes o del catálogo de componentes y<br />
soltarlo en una ventana de diseño.<br />
componente gráfica. Componente que permite al usuario añadir un gráfico a la GUI. Los estilos de gráfico<br />
disponibles son el diagrama de líneas, de barras, de líneas y barras y circular.<br />
componente imagen. Componente utilizado para visualizar una imagen, de un archivo BMP o ICO, en una ventana.<br />
componente lienzo. Componente en el que puede señalar y pulsar otros componentes, colocarlos y organizarlos<br />
para producir una interfaz gráfica de usuario. El componente lienzo ocupa el área de cliente de un componente<br />
ventana o de un componente página de cuaderno. Véase también componente página de cuaderno con lienzo y<br />
componente ventana con lienzo.<br />
componente lógico. Agrupación funcional de archivos relacionados dentro de un proyecto. Un componente lógico<br />
se crea cuando las especificaciones de control no contienen palabras clave NOMAIN y EXE.<br />
componente lógico compartido. Componente lógico al que puede accederse a través de más de un proyecto.<br />
componente medios. Componente que proporciona a un programa la posibilidad de procesar archivos de sonido<br />
(.WAV) y archivos de vídeo (.MID).<br />
componente menú emergente. Componente que, cuando se añade a un objeto en la interfaz, aparece junto al objeto<br />
con el que está asociado cuando se solicita. Puede señalar y pulsar un componente menú emergente de la paleta de<br />
componentes o del catálogo de componentes y soltarlo en una ventana de diseño.<br />
componente odbc/jdbc. Componente que permite a las aplicaciones VAPRG acceder y procesar archivos de base de<br />
datos que den soporte a la API ODBC de Windows o la API JDBC de Sun Microsystem.<br />
componente página de cuaderno. Componente utilizado para añadir páginas a un componente cuaderno. Véase<br />
también cuaderno.<br />
componente página de cuaderno con lienzo. Combinación del componente cuaderno y del componente página con<br />
lienzo. Véase también cuaderno y componente lienzo.<br />
componente panel de medios. Componente utilizado para proporcionar al usuario control sobre otros componentes.<br />
Por ejemplo, un componente panel de medios puede utilizarse para controlar el volumen de un componente medios.<br />
componente pulsador. Botón etiquetado con texto que representa una acción que se inicia cuando un usuario<br />
selecciona el pulsador. Puede señalar y pulsar un componente pulsador de la paleta de componentes o del catálogo<br />
de componentes y soltarlo en una ventana de diseño. Véase también componente pulsador gráfico.<br />
componente pulsador gráfico. Pulsador, etiquetado con un gráfico, que representa una acción que se inicia cuando<br />
un usuario lo selecciona. Compárese con componente pulsador.<br />
componente recuadro de contorno. Componente que es un recuadro rectangular colocado alrededor de un grupo de<br />
componentes para indicar que todos los componentes están relacionados.<br />
Glosario 497
componente recuadro de grupo. Marco rectangular alrededor de un grupo de controles que indica que están<br />
relacionados y que proporciona una etiqueta opcional para el grupo. En <strong>VisualAge</strong> <strong>RPG</strong>, se señala y pulsa un<br />
componente recuadro de grupo de la paleta de componentes o del catálogo de componentes y se suelta en una<br />
ventana de diseño.<br />
componente recuadro de lista. Control que contiene opciones desplazables que un usuario puede seleccionar. En<br />
<strong>VisualAge</strong> <strong>RPG</strong>, se señala y pulsa un componente recuadro de lista de la paleta de componentes o del catálogo de<br />
componentes y se suelta en una ventana de diseño.<br />
componente recuadro de selección. Recuadro de selección con texto asociado que representa una opción. Cuando<br />
un usuario selecciona una opción, aparece un indicador en el recuadro de selección que indica que la opción está<br />
seleccionada. El usuario puede eliminar la marca del recuadro de selección volviendo a seleccionar la opción. En<br />
<strong>VisualAge</strong> <strong>RPG</strong>, se señala y pulsa un componente recuadro de selección de la paleta de componentes o del catálogo<br />
de componentes y se suelta en una ventana de diseño.<br />
componente referencia a componente lógico. Componente que permite que un componente lógico se comunique<br />
con otro en una aplicación VA<strong>RPG</strong>.<br />
componentes. Objetos que componen la GUI de una aplicación VA<strong>RPG</strong>.<br />
componente selector cíclico. Tipo de campo de entrada que muestra un anillo de opciones relacionadas, pero que se<br />
excluyen mutuamente, por el que un usuario puede desplazarse y seleccionar una opción. El usuario también puede<br />
teclear una opción válida en el campo de entrada. Puede señalar y pulsar un componente selector cíclico de la paleta<br />
de componentes o del catálogo de componentes y soltarlo en una ventana de diseño.<br />
componente subarchivo de mensajes. Componente que puede visualizar mensajes predefinidos o texto<br />
suministrado en la lógica del programa.<br />
componente submenú. Componente utilizado para iniciar un submenú a partir de un elemento de menú o de un<br />
menú existente, o para iniciar un menú desplegable a partir de un elemento de menú en una barra de menú. Véase<br />
también submenú y componente elemento de menú.<br />
componente temporizador. Componente utilizado para hacer un seguimiento del intervalo de tiempo entre dos<br />
eventos y desencadenar el segundo evento cuando ha transcurrido el intervalo.<br />
componente texto estático. Componente utilizado como etiqueta para otros componentes, como solicitud para un<br />
componente campo de entrada.<br />
componente ventana. Área con límites visibles que representa una vista de un objeto o con la que un usuario<br />
mantiene un diálogo con un sistema. Puede señalar y pulsar un componente ventana de la paleta de componentes o<br />
del catálogo de componentes y soltarlo en la ventana de proyectos.<br />
componente ventana con lienzo. Combinación del componente ventana y del componente lienzo. Véase también<br />
componente ventana y componente lienzo.<br />
comprobación de sintaxis. Verifica que la sintaxis de cada línea sea correcta mientras se edita el código fuente. Con<br />
ello pueden evitarse errores de compilación. Esta opción puede activarse o desactivarse. Puede visualizarse sólo<br />
determinados tipos de especificación, como especificaciones C, o una línea con una serie específica.<br />
Conectividad de Baes de Datos Java (JDBC). Estándar del sector para la conectividad independiente de la base de<br />
datos entre Java y una amplia gama de bases de datos. JDBC proporciona una interfaz de programación de<br />
aplicaciones (API) a nivel de llamada para el acceso a bases de datos basado en SQL.<br />
CONFIG.SYS. Archivo de configuración, ubicado en el directorio raíz de la unidad de arranque, para los sistemas<br />
operativos DOS, OS/2 o Windows. Contiene información necesaria para instalar y ejecutar hardware y software.<br />
configuración. Manera en que el hardware y el software de un sistema de proceso de información están<br />
organizados y se conectan entre sí (T).<br />
construir. Proceso por el que las diversas partes de un código fuente que forman los componentes lógicos de una<br />
aplicación VA<strong>RPG</strong> se compilan y enlazan para producir una versión ejecutable de la aplicación.<br />
conversación DDE. El intercambio de datos entre un cliente DDE y un servidor DDE. Véase también conversación de<br />
enlace estático y conversación de enlace dinámico.<br />
498 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
conversación de enlace dinámico. En DDE, actualización automática de un programa cliente por un programa<br />
servidor cuando los datos cambian en el servidor. Compárese con conversación de enlace estático<br />
conversación de enlace estático. En DDE, petición explícita efectuada por un programa cliente a un programa<br />
servidor. El programa servidor responde a la petición. Compárese con conversación de enlace dinámico.<br />
cuaderno de propiedades. Representación gráfica que se asemeja a un cuaderno enlazado que contiene páginas<br />
separadas en secciones por páginas separadoras. Seleccione las pestañas de un cuaderno para ir de una sección a<br />
otra.<br />
cursor. Indicación visible de la posición en la que aparecerá la interacción de usuario con el teclado.<br />
D<br />
DBCS. Juego de caracteres de doble byte.<br />
DDE. Intercambio de datos dinámico.<br />
definición de interfaz de procedimiento. Repetición de la información prototipo dentro de la definición de un<br />
procedimiento. Se utiliza para declarar los parámetros de entrada para el procedimiento y para garantizar que la<br />
definición interna del procedimiento es coherente con la definición externa (el prototipo)<br />
directorio destino. Directorio en el que se almacena la aplicación VA<strong>RPG</strong> compilada después de una creación.<br />
Compárese con carpeta destino.<br />
directorio fuente. Directorio en el que se almacenan todos los archivos fuente para una aplicación VA<strong>RPG</strong>.<br />
Diseñador GUI. Conjunto de herramientas utilizadas para crear interfaces arrastrando y soltando componentes de<br />
la paleta de componentes a la ventana de diseño.<br />
DLL. Biblioteca de enlace dinámico.<br />
DLL de programa de utilidad. Véase módulo NOMAIN<br />
doble pulsación. Pulsar el botón del ratón dos veces rápidamente.<br />
E<br />
EBCDIC. Código de intercambio decimal binario ampliado. Juego de caracteres de 256 caracteres de 8 bits.<br />
edición directa. Utilización de procedimientos que permiten a un usuario trabajar con un objeto arrastrándolo con<br />
un ratón o interactuando con su menú emergente.<br />
elemento. En intercambio de datos dinámico, una unidad de datos. Por ejemplo, la posición de la casilla superior<br />
izquierda en una hoja de cálculo es fila 1, columna 1. Se puede hacer referencia a la posición de la casilla como el<br />
elemento R1C1.<br />
eliminar referencia. Acción de suprimir la asociación entre un componente y un campo de base de datos de<br />
AS/400.<br />
énfasis. Resaltado, cambio de color u otra indicación visible de condiciones relativas a un objeto o una opción que<br />
afecta a la capacidad del usuario de interactuar con ese objeto u opción. El énfasis también puede proporcionar a un<br />
usuario información adicional sobre el estado de una opción o un objeto.<br />
entrada/salida (E/S). Datos proporcionados al sistema o datos que resultan del proceso del sistema.<br />
estación de trabajo. Dispositivo que permite a un usuario efectuar trabajos. Véase también estación de trabajo<br />
programable.<br />
estación de trabajo programable (PWS). Estación de trabajo que tiene un cierto grado de capacidad de proceso y<br />
que permite a un usuario modificar sus funciones.<br />
Glosario 499
evento. Señal generada como resultado de una modificación en el estado de un componente. Por ejemplo, al<br />
accionar un pulsador se genera el evento Press.<br />
evento de enlace. Evento que un componente destino recibe siempre que cambia el estado de un componente<br />
fuente.<br />
excepción. (1) En lenguajes de programación, una situación anormal que se da durante la ejecución, que puede<br />
ocasionar una desviación de la secuencia normal de ejecución, para la que existen recursos en los lenguajes de<br />
programación a fin de definirla, activarla, reconocerla, ignorarla y manejarla. (I) (2) En <strong>VisualAge</strong> <strong>RPG</strong>, un evento o<br />
situación que impide, o puede impedir, que una acción solicitada por un usuario concluya tal como éste espera. Las<br />
excepciones tienen lugar cuando un producto no puede interpretar la entrada de un usuario.<br />
EXE. Extensión de un archivo ejecutable.<br />
exportar. Función que convierte un archivo interno en un formato de archivo estándar para utilizarlo fuera de la<br />
aplicación. Compárese con importar.<br />
F<br />
foco. Sinónimo de foco de entrada.<br />
foco de entrada. Área de una ventana en la que la interacción del usuario puede tener lugar desde el teclado o<br />
desde el ratón.<br />
I<br />
ICO. Extensión de archivo de un archivo de icono.<br />
icono. Representación gráfica de un objeto, que se compone de una imagen, un fondo de imagen y una etiqueta.<br />
importar. Función que convierte objetos de archivo de pantalla de AS/400 al componente VA<strong>RPG</strong> adecuado.<br />
Compárese con exportar.<br />
indicador de progreso. Uno o más controles utilizados para informar a un usuario sobre el curso de un proceso.<br />
índice. Identificador de una entrada en componentes de VA<strong>RPG</strong> como, por ejemplo, recuadros de lista o recuadros<br />
de combinación.<br />
INI. Extensión de archivo para un archivo del sistema operativo OS/2 o Windows que contiene información<br />
específica de la aplicación que necesita conservarse, de una llamada a una aplicación, a otra.<br />
intercambio de datos dinámicos (DDE). Intercambio de datos entre programas o entre un programa y un objeto de<br />
archivo de datos. Cualquier cambio efectuado en la información de un programa o una sesión se aplica a los datos<br />
idénticos creados por el otro programa. Véase también conversación DDE, cliente DDE y servidor DDE.<br />
Interfaz de programación de aplicaciones (API). Interfaz funcional suministrada por el sistema operativo o un<br />
programa bajo licencia que se solicita por separado, que permite que un programa de aplicación escrito en un<br />
lenguaje de alto nivel pueda utilizar datos o funciones específicas del sistema operativo o del programa bajo licencia.<br />
interfaz de usuario gráfica (GUI). Tipo de interfaz de usuario que proporciona las ventajas de los gráficos de alta<br />
resolución. Una interfaz gráfica de usuario incluye una combinación de gráficos, el paradigma de acción de objeto, el<br />
uso de dispositivos de puntero, barras de menú y otros menús, solapamiento de ventanas e iconos.<br />
Interfaz Nativa de Java (JNI). Interfaz de programación que permite al código Java que se ejecuta dentro de una<br />
Máquina Virtual Java (JVM) interoperar con las funciones escritas en otros lenguajes de programación.<br />
IPF. Recurso de Presentación de Información.<br />
J<br />
Java. Lenguaje de programación orientado a objeto para código interpretado portátil que soporta la interacción entre<br />
objetos remotos. Java y sus especificaciones han sido desarrolladas por Sun Microsystems, Incorporated.<br />
500 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
JavaBean. En Java, un modelo de componente reutilizable, portátil e independiente de la plataforma.<br />
Java Runtime Environment (JRE). Subconjunto del Kit de desarrollo Java para los usuarios finales y desarrolladores<br />
que deseen redistribuir el JRE. El JRE consiste en la Máquina Virtual Java, las Clases de Núcleo de Java y los archivos<br />
de soporte.<br />
Java 2 Software Development Kit (J2SDK). Software que distribuye Sun Microsystems a los desarrolladores de<br />
Java. Este software incluye el interpretador Java, clases Java y herramientas de desarrollo Java. Las herramientas de<br />
desarrollo incluyen un compilador, un depurador, un desensamblador, un AppletViewer, un generador de archivos de<br />
apéndice y un generador de documentación.<br />
juego de caracteres de doble byte (DBCS). Juego de caracteres en el que cada carácter se representa mediante 2<br />
bytes. Algunos idiomas como el japonés, el chino o el coreano, que contienen más símbolos de los que pueden<br />
representarse mediante los 256 elementos de código, necesitan el juego de caracteres de doble byte. Puesto que cada<br />
carácter necesita 2 bytes, la escritura, la visualización y la impresión de caracteres DBCS necesita hardware y<br />
programas que soporten DBCS. El sistema soporta cuatro juegos de caracteres de doble byte: japonés, coreano, chino<br />
simplificado y chino tradicional. Compárese con juego de caracteres de un solo byte (SBCS).<br />
juego de caracteres de un solo byte (SBCS). Juego de caracteres en el que cada carácter se representa mediante un<br />
byte. Compárese con juego de caracteres de doble byte (DBCS).<br />
L<br />
línea de ejecución. La unidad más pequeña de operación que puede efectuarse dentro de un proceso.<br />
lista desplegable. Campo de una sola selección en el que sólo puede verse la opción actual. Las demás opciones<br />
permanecen ocultas hasta que el usuario realiza una acción específica para visualiza el recuadro de lista que las<br />
contiene.<br />
lugar de trabajo. Área que ocupa toda la pantalla y contiene todos los objetos que componen la interfaz del usuario.<br />
M<br />
Máquina Virtual Java (JVM). La parte del Java Runtime Environment (JRE) responsable de interpretar bytecodes de<br />
Java.<br />
marcador de grupo. Marcador que identifica un componente como el primero de un grupo. Cuando el usuario<br />
desplaza el cursor por un grupo de componentes y llega al último, el cursor vuelve a la primera parte del grupo.<br />
mensaje. (1) Información no solicitada por un usuario, pero visualizada por un producto, como respuesta a un<br />
evento no esperado o cuando puede producir algo no deseado. (2) Comunicación enviada por una persona o un<br />
programa a otra persona u otro programa.<br />
menú. Lista de opciones que pueden aplicarse a un objeto. Un menú puede contener opciones que no estén<br />
disponibles para ser seleccionadas en determinados contextos. Estas opciones están atenuadas.<br />
menú desplegable. Menú que aparece al seleccionar una opción en una barra de menú o a partir del símbolo del<br />
menú del sistema. Las opciones de un menú desplegable están relacionadas entre sí.<br />
menú emergente. Menú que, cuando se solicita, aparece junto al objeto con el que está asociado. Contiene opciones<br />
adecuadas para el objeto en su contexto actual.<br />
MID. Extensión de archivo de un archivo MIDI.<br />
migrar. (1) Mover a entorno operativo modificado, generalmente a un nuevo release o versión de un sistema. (2)<br />
Mover datos desde una jerarquía de almacenamiento a otra.<br />
módulo EXE. Un módulo EXE consta de un procedimiento principal y subprocedimientos. Se crea cuando la palabra<br />
clave EXE está presente en la especificación de control. Todas las subrutinas (BEGSR) deben ser locales a un<br />
procedimiento. El EXE debe contener un procedimiento cuyo nombre coincida con el nombre del archivo fuente. Este<br />
será el punto de entrada principal para el EXE; es decir, el procedimiento principal.<br />
Glosario 501
módulo NOMAIN. Módulo que contiene solamente subprocedimientos. No contiene ninguna acción o subrutina de<br />
usuario autónoma. Un módulo NOMAIN se crea cuando la palabra clave NOMAIN se encuentra en la especificación<br />
de control.<br />
N<br />
nemotécnico. Un solo carácter, dentro del texto de una opción, identificado por un subrayado debajo de él. Véase<br />
también selección nemotécnica.<br />
nivel del graduador. Indicador visual en el graduador que un usuario puede mover para modificar el valor<br />
numérico.<br />
O<br />
objeto. (1) Espacio de almacenamiento con nombre que consiste en un conjunto de características que describen el<br />
espacio de almacenamiento en sí y, en algunos casos, datos. Un objeto es algo que existe en el almacenamiento y<br />
ocupa parte de su espacio, y en el que se pueden efectuar operaciones. Algunos ejemplos de objetos son: programas,<br />
archivos, bibliotecas y carpetas. (2) Componente visual de una interfaz de usuario con el que un usuario puede<br />
efectuar una tarea. Un objeto puede aparecer como texto o como un icono.<br />
objeto de datos. Objeto que transporta información, como texto, gráficos, audio o vídeo.<br />
P<br />
paleta de colores. Conjunto de colores que pueden utilizarse para cambiar el color de cualquier componente en la<br />
GUI de la aplicación.<br />
paleta de componentes. El grupo de componentes más adecuado para construir la interfaz gráfica de usuario actual<br />
para una aplicación. Cuando finaliza la GUI, puede vaciar la paleta y añadir los componentes del catálogo de<br />
componentes que necesite para la siguiente aplicación.<br />
paleta de fonts. Conjunto de fonts que pueden utilizarse para cambiar el font de un componente en la GUI de la<br />
aplicación.<br />
panel de navegación. Grupo de botones que se pueden utilizar para controlar la selección visible de registros en un<br />
subarchivo.<br />
paquete. Función utilizada para reunir todos los componentes de una aplicación VA<strong>RPG</strong> para su distribución.<br />
paradigma acción-objeto. Patrón de interacción en el que un usuario selecciona un objeto y a continuación<br />
selecciona una acción para aplicarla a ese objeto.<br />
procedimiento. Un procedimiento es cualquier parte del código a la que pueda llamarse mediante la operación<br />
CALLP.<br />
procedimiento principal. Un procedimiento principal es un subprocedimiento que puede especificarse como<br />
procedimiento de entrada del programa y que recibe el control cuando se le llama por primera vez. El procedimiento<br />
principal sólo se genera cuando se crea un EXE. Consulte módulo EXE<br />
programación orientada a objetos. Método para estructurar programas como clases organizadas jerárquicamente<br />
que describen los datos y las operaciones de objetos que pueden interactuar con otros objetos. (T)<br />
programa destino. Objeto que el proyecto ha de crear, como una biblioteca de enlace dinámico (DLL).<br />
programa objeto. Programa destino adecuado para ser ejecutado. Un programa objeto puede o no necesitar enlace.<br />
(T)<br />
prototipo. Definición de la interfaz de llamada. Incluye información como, por ejemplo, si la llamada está enlazada<br />
(procedimiento) o es dinámica (programa), el nombre externo, el número y la naturaleza de los parámetros, qué<br />
parámetros deben ser pasados y el tipo de datos de cualquier valor de retorno (para un procedimiento)<br />
502 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
proyecto. Conjunto de datos y acciones completo necesarios para construir un destino único, como una biblioteca de<br />
enlace dinámico (DLL) o un archivo ejecutable (EXE).<br />
pulsar. Pulsar y liberar un botón del ratón sin mover el puntero fuera de la opción o del objeto. Véase también doble<br />
pulsación.<br />
puntero del ratón. Sinónimo de cursor.<br />
PWS. Estación de trabajo programable.<br />
R<br />
ratón. Dispositivo con uno o más pulsadores que se utilizan para colocar un puntero en la pantalla sin usar el<br />
teclado. Se utiliza para seleccionar una opción o una función que se ha de efectuar o para llevar a cabo operaciones<br />
en la pantalla, como dibujar líneas y arrastrarlas de una posición a otra.<br />
recuadro de combinación. Control que combina las funciones de un campo de entrada y de un recuadro de lista.<br />
Un recuadro de combinación contiene una lista de objetos por los que el usuario puede desplazarse y seleccionar<br />
para completar el campo de entrada. Si lo desea, el usuario también puede escribir texto directamente en el campo de<br />
entrada. En <strong>VisualAge</strong> <strong>RPG</strong>, se señala y pulsa un componente recuadro de combinación de la paleta de componentes<br />
o del catálogo de componentes y se suelta en una ventana de diseño.<br />
recuadro de combinación desplegable. Tipo de recuadro de combinación en el que un recuadro de lista está oculto<br />
hasta que un usuario realiza una acción específica para visualizarlo.<br />
Recurso de Presentación de Información (IPF). Herramienta utilizada para crear ayuda en línea en una estación de<br />
trabajo programable.<br />
resaltado de símbolos. Mejora la legibilidad del código. Puede configurar el resaltado de diferentes elementos del<br />
lenguaje con diferentes colores o fonts para identificar las estructuras del programa. Puede activar o desactivar el<br />
resaltado de símbolos.<br />
S<br />
SBCS. Juego de caracteres de un solo byte.<br />
sección fuente principal. En un programa VA<strong>RPG</strong>, la sección que contiene todas las definiciones globales para un<br />
módulo. Para un componente lógico, esta sección también incluye la acción y las subrutinas de usuario.<br />
selección nemotécnica. Método de selección en el que un usuario selecciona una opción tecleando el nemotécnico<br />
de esa opción.<br />
señalar y pulsar. (1) Método de selección que se utiliza para copiar un componente de la paleta o el catálogo de<br />
componentes en la ventana de diseño, la vista de iconos o la vista de árbol de la GUI. (2) Para colocar un<br />
componente en cualquiera de las vistas, señale y pulse el componente; después, mueva el cursor a la ventana elegida<br />
y señale y suelte el componente donde desea que aparezca. En las vistas de iconos y de árbol, el componente se<br />
colocará en el componente padre, y tendrá que moverlo al lugar donde le interese que aparezca en la ventana de<br />
diseño.<br />
servidor. Sistema de una red que maneja las peticiones de otro sistema, llamado cliente.<br />
servidor DDE. Aplicación que proporciona datos a otra aplicación habilitada por DDE. Compárese con cliente DDE.<br />
Véase también conversación DDE.<br />
sistema operativo. Grupo de programas del sistema que controlan la operación general de un sistema.<br />
solicitud. (1) Mensaje visual o audible enviado por un programa para solicitar la respuesta de un usuario. (T) (2)<br />
Símbolo o mensaje que se visualiza para solicitar una entrada del usuario o proporcionar información operativa. El<br />
usuario debe responder a la solicitud para poder proseguir.<br />
SSL. Capa de Sockets Segura.<br />
Glosario 503
submenú. Menú que aparece al seleccionar una opción en cascada en otro menú y que contiene opciones<br />
relacionadas con dicho menú. Los submenús se utilizan para reducir la longitud de un menú desplegable o de un<br />
menú emergente. Véase también componente submenú.<br />
subprocedimiento. Procedimiento especificado después de la sección fuente principal. Debe tener un prototipo<br />
correspondiente en las especificaciones de definición de la sección fuente principal.<br />
subrutina de acción. Lógica que se escribe para responder a un evento específico.<br />
T<br />
tema. En intercambio de datos dinámico (DDE), el conjunto de datos que es el sujeto de una conversación DDE.<br />
tope de tabulador. Atributo utilizado para establecer un tope de tabulador para un componente, de modo que los<br />
usuarios puedan colocar el foco en el mismo cuando utilicen la tecla tabuladora para moverse por la interfaz.<br />
V<br />
valor por omisión. Valor que el sistema o un programa proporciona o presupone automáticamente cuando el<br />
usuario no especifica ninguno. El valor por omisión puede asignarse a un pulsador oaunpulsador gráfico.<br />
ventana activa. Ventana con la que un usuario interactúa actualmente. Esta es la ventana que recibe la entrada del<br />
teclado.<br />
ventana de diseño. Ventana en el diseñador GUI en la que se colocan componentes para crear una interfaz de<br />
usuario.<br />
ventana emergente. Ventana movible, de tamaño fijo, en la que un usuario proporciona información necesaria para<br />
una aplicación de manera que puede continuar procesando una petición de usuario. Sinónimo de ventana secundaria.<br />
ventana inactiva. Ventana que no puede recibir entrada de teclado en un momento dado.<br />
ventana primaria. Ventana en la que tiene lugar la interacción principal entre el usuario y la aplicación. Sinónimo de<br />
ventana principal.<br />
ventana principal. Véase ventana primaria.<br />
ventana secundaria. Ventana que contiene información que depende de la información de una ventana primaria y<br />
se utiliza para complementar la interacción en dicha ventana. Véase también ventana primaria. Sinónimo de ventana<br />
emergente.<br />
vista de árbol. Visualización del contenido de un objeto de manera jerárquica.<br />
vista de detalles. Vista de contenido estándar en la que un icono pequeño se combina con texto para proporcionar<br />
información descriptiva sobre un objeto.<br />
vista de iconos. Vista de contenido estándar en la que cada objeto contenido en un contenedor se visualiza como un<br />
icono.<br />
W<br />
WAV. Extensión de archivo de un archivo de ondas.<br />
504 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Bibliografía<br />
Para obtener información adicional sobre temas relacionados con <strong>VisualAge</strong> <strong>RPG</strong> y<br />
CODE (Cooperative Development Environment) para AS/400, consulte las<br />
siguientes publicaciones de <strong>IBM</strong>:<br />
Manuales de WebSphere Development Tools para AS/400:<br />
*Nota: Se han actualizado todas las versiones en línea de las publicaciones de<br />
WebSphere Development Tools para AS/400. Las publicaciones cuyo<br />
número de pedido está marcado con un asterisco (*) no se han vuelto a<br />
imprimir en este release.<br />
v Iniciación a <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400, SC10-3287-01 (SC09-2625-01),<br />
proporciona información sobre WebSphere Development Tools para AS/400,<br />
dando una visión general de las características de CODE/400 y VA<strong>RPG</strong>, de<br />
cómo funcionan juntas y de las ventajas empresariales que se obtienen al<br />
utilizarlas.<br />
Manuales de <strong>VisualAge</strong> <strong>RPG</strong>:<br />
v Iniciación a <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400, SC10-3287-01 (SC09-2625-01)*, describe<br />
los conceptos y las tareas de VA<strong>RPG</strong> que se realizan mientras se utiliza<br />
<strong>VisualAge</strong> <strong>RPG</strong>.<br />
v <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta del lenguaje, SC10-3066-01 (SC09-2451-01)*,<br />
proporciona información de consulta sobre el lenguaje y el compilador de<br />
VA<strong>RPG</strong>.<br />
v <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes, SC10-3065-02 (SC09-2450-02)*,<br />
proporciona una descripción de cada componente, atributo de componente,<br />
evento de componente, atributo de componente y atributo de evento de VA<strong>RPG</strong>.<br />
Es un manual de consulta para todos aquellos que desarrollan aplicaciones con<br />
<strong>VisualAge</strong> <strong>RPG</strong>.<br />
v Programación con <strong>VisualAge</strong> para <strong>RPG</strong>, SC10-3067-02 (SC09-2449-02)*, contiene<br />
información específica sobre cómo crear aplicaciones con <strong>VisualAge</strong> <strong>RPG</strong>.<br />
Describe los pasos a seguir en cada fase del ciclo de desarrollo de aplicaciones,<br />
desde el diseño al empaquetado y la distribución. Se incluyen ejemplos de<br />
programación para clarificar los conceptos y el proceso de desarrollo de<br />
aplicaciones VA<strong>RPG</strong>.<br />
v Java for <strong>RPG</strong> Programmers es una introducción al lenguaje Java (y <strong>RPG</strong> IV)<br />
mediante la comparación con el lenguaje <strong>RPG</strong>. Se trata de un comienzo muy<br />
apropiado en el mundo de Java. También incluye una guía de aprendizaje<br />
interactiva en formato CD sobre Java y <strong>VisualAge</strong> para Java, mediante MINDQ.<br />
v Experience <strong>RPG</strong> IV Tutorial es una guía de aprendizaje interactiva en formato CD<br />
que enseña <strong>RPG</strong> IV e ILE, paso a paso y de un modo divertido. Se trata de un<br />
manual con preguntas y ejercicios que ayudan a adquirir experiencia práctica<br />
con esta nueva y apasionante versión de <strong>RPG</strong>.<br />
v Otra publicación que no es de <strong>IBM</strong> interesante para los usuarios de <strong>VisualAge</strong><br />
<strong>RPG</strong> es <strong>VisualAge</strong> for <strong>RPG</strong> by Example.<br />
Información y publicaciones del AS/400:<br />
v Si tiene conexión con Internet, puede obtener información sobre otras<br />
publicaciones del AS/400 en uno de los siguientes sitios Web:<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 505
http://www.as400.ibm.com/infocenter<br />
http://publib.boulder.ibm.com/pubs/html/as400/infocenter.htm<br />
Para obtener una versión en copia software de las publicaciones de AS/400,<br />
consulte la publicación CD-ROM AS/400e Biblioteca en soporte software,<br />
SK3T-1325-04 (SK3T-0118-04).<br />
Manuales de Gestor para el Desarrollo de Aplicaciones ADM:<br />
v ADTS/400: Gestor para el Desarrollo de Aplicaciones ADM Introducción y guía de<br />
planificacion, GC10-9401-00 (GC09-1807-00), describe los conceptos básicos y la<br />
planificación necesaria para hacer un uso efectivo de la función Gestor para el<br />
Desarrollo de Aplicaciones ADM.<br />
v ADTS/400: Gestor para el Desarrollo de Aplicaciones ADM Guía del Usuario,<br />
SC10-9609-01 (SC09-2133-01), describe cómo crear y gestionar proyectos<br />
definidos para la función Gestor para el Desarrollo de Aplicaciones ADM.<br />
v ADTS/400: Gestor para el Desarrollo de Aplicaciones ADM Guía de autoaprendizaje,<br />
SC10-9610-00 (SC09-2138-00), proporciona experiencia práctica en la utilización<br />
de la función Gestor para el Desarrollo de Aplicaciones ADM del producto<br />
ADTS para OS/400. Esta guía muestra cómo utilizar la función Gestor para el<br />
Desarrollo de Aplicaciones ADM guiándole a través de una serie de ejercicios<br />
paso a paso.<br />
v ADTS/400: Application Development Manager API <strong>Reference</strong>, SC09-2180-00, describe<br />
cómo los programadores de aplicaciones pueden escribir su propia interfaz para<br />
la función Gestor para el Desarrollo de Aplicaciones ADM.<br />
Manual Recurso de presentación de información (IPF):<br />
v Information Presentation Facility Programming Guide G25H-7110, describe los<br />
elementos que componen el IPF (Recurso de presentación de información). IPF<br />
es una herramienta que soporta el diseño y el desarrollo de documentos en línea<br />
y de recursos de ayuda en línea.<br />
Manuales de SQL:<br />
v <strong>IBM</strong> SQL <strong>Reference</strong> Version 2 SC26-8416, Volumen 2, compara los recursos de<br />
– DB2<br />
– SQL/DS <br />
– DB2/400 <br />
– DB2/6000 <br />
– <strong>IBM</strong> SQL<br />
– ISO-ANSI (SQL92E)<br />
– X/Open (XPG4-SQL).<br />
v DB2 Universal Database Administration Guide S10J-8157, proporciona la<br />
información necesaria para utilizar y administrar el producto DB2.<br />
v DB2 Universal Database Embedded SQL Programming Guide S10J-8158, describe<br />
cómo diseñar y codificar programas de aplicación para acceder a los servidores<br />
de la familia DB2 Client/Server (como DB2 o DB2/400). Contiene información<br />
detallada sobre la utilización del SQL (Lenguaje de Consulta Estructurada) y<br />
llamadas de API en las aplicaciones.<br />
506 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Avisos<br />
Esta información se ha elaborado para productos y servicios que se ofrecen en<br />
Estados Unidos. <strong>IBM</strong> puede no ofrecer los productos, servicios o características que<br />
se tratan en este documento en otros países. Consulte con el representante local de<br />
<strong>IBM</strong> para obtener información sobre los productos y servicios que están<br />
disponibles en su área en la actualidad. Toda referencia hecha a un producto,<br />
programa o servicio de <strong>IBM</strong> no pretende afirmar ni implicar que sólo puede<br />
utilizarse ese producto, programa o servicio de <strong>IBM</strong>. En su lugar puede utilizarse<br />
cualquier producto, programa o servicio funcionalmente equivalente que no<br />
infrinja ningún derecho de propiedad intelectual de <strong>IBM</strong>. Sin embargo, es<br />
responsabilidad del usuario evaluar y verificar el funcionamiento de todos los<br />
productos, programas o servicios que no sean de <strong>IBM</strong>.<br />
<strong>IBM</strong> puede tener patentes o aplicaciones pendientes de patente acerca del tema de<br />
este documento. La entrega de este documento no le otorga ninguna licencia sobre<br />
dichas patentes. Puede enviar consultas sobre licencias, por escrito, a:<br />
Director of Licensing<br />
Intellectual Property & Licensing<br />
International Business Machines Corporation<br />
North Castle Drive, MD - NC119<br />
Armonk, New York 10504-1785<br />
Estados Unidos<br />
El párrafo siguiente no procede en el Reino Unido ni en ningún otro país donde<br />
tales estipulaciones sean contradictorias con las leyes locales: INTERNATIONAL<br />
BUSINESS MACHINES CORPORATION PROPORCIONA ESTA PUBLICACIÓN “<br />
TAL CUAL” SIN GARANTÍA DE NINGUNA CLASE, NI EXPRESA NI<br />
IMPLÍCITA, INCLUSIVE, PERO SIN LIMITARSE A, LAS GARANTÍAS<br />
IMPLÍCITAS DE NO VULNERACIÓN, COMERCIALIZACIÓN O ADECUACIÓN<br />
A UN FIN DETERMINADO. En determinados países no se permite la declaración<br />
de limitación de responsabilidad de las garantías expresas ni implícitas en<br />
determinadas transacciones, por lo tanto, esta declaración puede no ser procedente<br />
en su caso.<br />
Esta información puede contener inexactitudes técnicas o errores tipográficos. Se<br />
efectúan cambios periódicos en la información contenida en este documento; tales<br />
cambios se incorporarán en nuevas ediciones de la publicación. <strong>IBM</strong> puede hacer<br />
mejoras y/o modificaciones en los productos y/o programas descritos en esta<br />
publicación en cualquier momento sin previo aviso.<br />
Las referencias hechas en esta información a páginas Web de terceros se<br />
proporcionan sólo como gentileza para los usuarios y de ninguna manera pueden<br />
interpretarse como aprobación de esas páginas Web. Los materiales que figuran en<br />
esas páginas Web no forman parte de los materiales para este producto de <strong>IBM</strong> y<br />
la utilización de tales páginas Web es responsabilidad del usuario.<br />
Los licenciatarios de este programa que deseen obtener información acerca del<br />
mismo con el fin de: (i) intercambiar la información entre programas creados<br />
independientemente y otros programas (incluyendo éste) y (ii) utilizar mutuamente<br />
la información que se ha intercambiado, deben ponerse en contacto con:<br />
<strong>IBM</strong> Canada Ltd.<br />
© Copyright <strong>IBM</strong> Corp. 1994, 2000 507
Department 071<br />
1150 Eglinton Avenue East<br />
Toronto, Ontario M3C 1H7<br />
Canadá<br />
Dicha información estará disponible de acuerdo con las condiciones oportunas, que<br />
en algunos casos puede incluir el pago de una cantidad.<br />
<strong>IBM</strong> proporciona el programa bajo licencia descrito en esta información y todo el<br />
material bajo licencia disponible para él según los términos del Contrato de Cliente<br />
<strong>IBM</strong>, Contrato de Licencia de Programa Internacional <strong>IBM</strong> o cualquier contrato<br />
equivalente entre nosotros.<br />
Información de interfaz de programación<br />
Esta publicación pretende ayudarle a crear y gestionar aplicaciones e interfaces de<br />
usuario <strong>VisualAge</strong> <strong>RPG</strong> en la estación de trabajo, en un entorno cliente/servidor.<br />
Esta publicación documenta la Interfaz de programación de uso general y la<br />
información de guía asociada que proporciona <strong>VisualAge</strong> <strong>RPG</strong> y CODE/400.<br />
Marcas registradas y marcas de servicio<br />
Los términos siguientes son marcas registradas de International Business Machines<br />
Corporation en Estados Unidos y/o en otros países:<br />
Application System/400 AS/400 AS/400e<br />
Common User Access CUA DATABASE 2<br />
DB2 DB2 Connect DB2 Universal Database<br />
<strong>IBM</strong> OS/400 SQL/DS<br />
<strong>VisualAge</strong> 400<br />
Java y todas las marcas registradas basadas en Java son marcas registradas o<br />
nombres comerciales de Sun Microsystems, Inc. en Estados Unidos y/u otros<br />
países.<br />
ActiveX, Microsoft, Windows y Windows NT son marcas registradas de Microsoft<br />
Corporation en Estados Unidos y/o en otros países.<br />
Otros nombres de empresas, productos y servicios pueden ser marcas registradas o<br />
marcas de servicio de otras firmas.<br />
508 <strong>VisualAge</strong> <strong>RPG</strong> Manual de consulta de componentes
Número de Programa: 5769-CL3<br />
Printed in Denmark by <strong>IBM</strong> Danmark A/S<br />
SC10-3065-04