Form VL_SAM148 : Tier and Platform Aware Subroutines

LANSA

Form VL_SAM148 : Tier and Platform Aware Subroutines
Name: VL_SAM148

Description: The following RDMLX form is used to execute the tier and platform aware subroutine VSAM145.
FUNCTION OPTIONS(*DIRECT);
BEGIN_COM FORMPOSITION(ScreenCenter) HEIGHT(305) LAYOUTMANAGER(#ATLM_1) LEFT(239) TOP(121) VISUALSTYLE(#VS_NORM) WIDTH(613);
DEFINE_COM CLASS(#PRIM_ATLM) NAME(#ATLM_1);
DEFINE_COM CLASS(#PRIM_ATLI) NAME(#ATLI_1) ATTACHMENT(Bottom) PARENT(#ATLM_1);
DEFINE_COM CLASS(#PRIM_STBR) NAME(#STBR_1) DISPLAYPOSITION(1) HEIGHT(22) LEFT(0) MESSAGEPOSITION(1) PARENT(#COM_OWNER) TABPOSITION(1) TABSTOP(False) TOP(256) WIDTH(605);
DEFINE_COM CLASS(#PRIM_ATLI) NAME(#ATLI_2) ATTACHMENT(Bottom) MANAGE(#STBR_1) PARENT(#ATLM_1);
DEFINE_COM CLASS(#PRIM_PANL) NAME(#PANL_1) DISPLAYPOSITION(2) HEIGHT(256) LAYOUTMANAGER(#SPLM_1) LEFT(0) PARENT(#COM_OWNER) TABPOSITION(2) TABSTOP(False) TOP(0) WIDTH(605);
DEFINE_COM CLASS(#PRIM_ATLI) NAME(#ATLI_3) ATTACHMENT(Center) MANAGE(#PANL_1) PARENT(#ATLM_1);
DEFINE_COM CLASS(#PRIM_SPLM) NAME(#SPLM_1) ORIENTATION(Vertical);
DEFINE_COM CLASS(#PRIM_PANL) NAME(#PANL_2) DISPLAYPOSITION(1) HEIGHT(256) LAYOUTMANAGER(#ATLM_2) LEFT(0) PARENT(#PANL_1) TABPOSITION(1) TABSTOP(False) TOP(0) WIDTH(215);
DEFINE_COM CLASS(#PRIM_PANL) NAME(#PANL_3) DISPLAYPOSITION(2) HEIGHT(256) LAYOUTMANAGER(#ATLM_3) LEFT(219) PARENT(#PANL_1) TABPOSITION(2) TABSTOP(False) TOP(0) WIDTH(386);
DEFINE_COM CLASS(#PRIM_SPLI) NAME(#SPLI_1) MANAGE(#PANL_2) PARENT(#SPLM_1);
DEFINE_COM CLASS(#PRIM_SPLI) NAME(#SPLI_2) MANAGE(#PANL_3) PARENT(#SPLM_1) WEIGHT(1);
DEFINE_COM CLASS(#PRIM_ATLM) NAME(#ATLM_2);
DEFINE_COM CLASS(#PRIM_ATLM) NAME(#ATLM_3);
DEFINE_COM CLASS(#PRIM_LTVW) NAME(#LIB_LIST) DISPLAYPOSITION(1) HEIGHT(256) LEFT(0) PARENT(#PANL_2) SELECTIONSTYLE(Single) TABPOSITION(1) TOP(0) WIDTH(215);
DEFINE_COM CLASS(#PRIM_ATLI) NAME(#ATLI_4) ATTACHMENT(Center) MANAGE(#LIB_LIST) PARENT(#ATLM_2);
DEFINE_COM CLASS(#PRIM_LTVW) NAME(#PGM_LIST) DISPLAYPOSITION(1) HEIGHT(256) LEFT(0) PARENT(#PANL_3) SELECTIONSTYLE(Single) TABPOSITION(1) TOP(0) WIDTH(386);
DEFINE_COM CLASS(#PRIM_ATLI) NAME(#ATLI_5) ATTACHMENT(Center) MANAGE(#PGM_LIST) PARENT(#ATLM_3);
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_1) CAPTION('Library') CAPTIONTYPE(Caption) DISPLAYPOSITION(1) PARENT(#LIB_LIST) SOURCE(#STD_DESCS) WIDTH(45);
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_2) CAPTION('Description') CAPTIONTYPE(Caption) DISPLAYPOSITION(2) PARENT(#LIB_LIST) SOURCE(#STD_DESCL) WIDTH(20) WIDTHTYPE(Remainder);
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_3) CAPTION('Name') CAPTIONTYPE(Caption) DISPLAYPOSITION(1) PARENT(#PGM_LIST) SOURCE(#STD_TEXTS) WIDTH(28);
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_4) CAPTION('Description') CAPTIONTYPE(Caption) DISPLAYPOSITION(2) PARENT(#PGM_LIST) SOURCE(#STD_TEXTL) WIDTH(20) WIDTHTYPE(Remainder);
DEFINE_COM CLASS(#STD_NUM.Visual) NAME(#LIB_TOTAL) CAPTION('Libraries') DISPLAYPOSITION(1) HEIGHT(16) LABELTYPE(Caption) LEFT(420) MARGINLEFT(42) PARENT(#STBR_1) READONLY(True) TABPOSITION(1) TABSTOP(False) TOP(4) VISUALSTYLE(#VS_NOREAD) WIDTH(79);
DEFINE_COM CLASS(#STD_NUM.Visual) NAME(#PGM_TOTAL) CAPTION('Programs') DISPLAYPOSITION(2) HEIGHT(16) LABELTYPE(Caption) LEFT(501) MARGINLEFT(46) PARENT(#STBR_1) READONLY(True) TABPOSITION(2) TABSTOP(False) TOP(4) VISUALSTYLE(#VS_NOREAD) WIDTH(85);
;
DEFINE FIELD(#OBJ_RQS) TYPE(*CHAR) LENGTH(10);
DEFINE FIELD(#OBJ_MAX) TYPE(*DEC) LENGTH(7) DECIMALS(0) DEFAULT(500);
DEFINE FIELD(#OBJ_TYP) TYPE(*CHAR) LENGTH(10);
DEFINE FIELD(#OBJ_LIB) TYPE(*CHAR) LENGTH(10);
DEFINE FIELD(#OBJ_NAM) TYPE(*CHAR) LENGTH(10);
DEFINE FIELD(#OBJ_DES) TYPE(*CHAR) LENGTH(50);
DEF_LIST NAME(#OBJ_LIST) FIELDS(#OBJ_NAM #OBJ_DES) Type(*Working) Entrys(500);
EVTROUTINE handling(#com_owner.Initialize);
*;
* Define always exchange values;
*;
EXCHANGE FIELDS(#OBJ_RQS #OBJ_TYP #OBJ_LIB #OBJ_MAX) OPTION(*ALWAYS);
* ;
* Load up a list of all Libraries;
*;
Change #Obj_Rqs Open;
Change #Obj_Lib Qsys;
Change #Obj_Typ Lib;
Dountil '#Obj_Rqs *ne More';
Clr_List #Obj_List;
Call Process(*Direct) Function(VSAM145) Pass_Lst(#Obj_List) Exit_Used(*Next) Menu_Used(*Next);
SelectList #Obj_LIst;
Change #Std_Descs #Obj_Nam;
Change #Std_DescL #Obj_Des ;
Add_Entry #Lib_list ;
EndSelect;
EndUntil;
Set #Lib_Total Value(#Lib_List.Entries) ;
;
ENDROUTINE;
*;
* Load up a list of all programs in the selected library;
*;
EVTROUTINE HANDLING(#Lib_List.ItemGotSelection) OPTIONS(*NOCLEARMESSAGES *NOCLEARERRORS);
Message 'Load program list ... please wait' Type(*Status);
Clr_List #Pgm_List ;
Change #Obj_Rqs Open;
Change #Obj_Lib #Std_Descs;
Change #Obj_Typ Pgm ;
Dountil '#Obj_Rqs *ne More';
Clr_List #Obj_List;
Call Process(*Direct) Function(VSAM145) Pass_Lst(#Obj_List) Exit_Used(*Next) Menu_Used(*Next);
SelectList #Obj_LIst;
Change #Std_TextS #Obj_Nam;
Change #Std_TextL #Obj_Des ;
Add_Entry #Pgm_List ;
EndSelect;
EndUntil;
Set #Pgm_Total Value(#Pgm_List.Entries) ;
ENDROUTINE;
;
END_COM;