Member WRKVLDL in WEBSECURE / QRPGLESRC

1.00
       *********************************************************************
2.00
       *  RPG ILE MODULE WEBSECURE/WRKVLDL
3.00
       *
4.00
       *  After compiling this RPG MODULE,
5.00
       *  create the related program with the following command:
6.00
       *
7.00
       *  CRTPGM WEBSECURE/WRKVLDL MODULE(WEBSECURE/WRKVLDL
8.00
       *         WEBSECURE/WRKVLDLE WEBSECURE/LSTVLDL WEBSECURE/GETVLDLE)
9.00
       *         ACTGRP(WRKVLDL) AUT(*USE)
10.00
       *
11.00
       *********************************************************************
12.00
       /copy websecure/qrpglesrc,hspecs
13.00
       /copy websecure/qrpglesrc,hspecsbnd
14.00
       /copy WEBSECURE/qrpglesrc,prototypeb
15.00
       /copy WEBSECURE/qrpglesrc,usec
16.00
       /copy WEBSECURE/qrpglesrc,variables3
17.00
       *=====================================================================
18.00
       *  Variables from the input string
19.00
      D request         s             10a
20.00
      D vldlnam         s             10a
21.00
      D vldllib         s             10a
22.00
      D UsNamN          s             20a
23.00
      D UsPwdN          s             20a
24.00
      D UsTxtN          s             50a
25.00
       *
26.00
      D thsrequest      s              3a
27.00
      D thsvldlnam      s             10a
28.00
      D thsvldllib      s             10a
29.00
      D thsUsrName      s             20a
30.00
      D thsUsrPwd       s             20a
31.00
      D thsUsrDes       s             50a
32.00
       *
33.00
      D InpErrSW        s              1a
34.00
      D RetCode         s              1a
35.00
      D Color01         s             10a
36.00
      D Color02         s             10a
37.00
      D Color03         s             10a
38.00
       *=====================================================================
39.00
       * House keeping
40.00
      C                   eval      InpErrSW = ' '
41.00
      C                   eval      RetCode  = ' '
42.00
       * Get and parse input string
43.00
       /copy WEBSECURE/qrpglesrc,prolog3
44.00
      C                   eval      request = zhbGetVarUpper('request')
45.00
      C                   eval      vldlnam = zhbGetVarUpper('vldlnam')
46.00
      C                   eval      vldllib = zhbGetVarUpper('vldllib')
47.00
      C                   eval      UsNamN  = zhbGetVar('usnamn')
48.00
      C                   eval      UsPwdN  = zhbGetVar('uspwdn')
49.00
      C                   eval      UsTxtN  = zhbGetVar('ustxtn')
50.00
       * Read skeleton output html, etc.
51.00
      C                   callp     gethtml('HTMLSRC':'WEBSECURE':'WRKVLDL')
52.00
       * Start HTML
53.00
      C                   exsr      SetTop
54.00
      C                   callp     wrtsection('top')
55.00
       * Check request
56.00
      C                   if        request = ' '
57.00
      C                   exsr      AskVldl
58.00
      C                   exsr      Exit
59.00
      C                   endif
60.00
       *
61.00
      C                   if        request = 'START'
62.00
      C                   exsr      StrVldl
63.00
      C                   exsr      Exit
64.00
      C                   endif
65.00
       *
66.00
      C                   exsr      Process
67.00
      C                   exsr      Exit
68.00
       *=====================================================================
69.00
       * Which validation list?
70.00
       *=====================================================================
71.00
      C     AskVldl       begsr
72.00
      C                   callp     updHtmlVar('vldlnam':'inetusr')
73.00
      C                   callp     updHtmlVar('vldllib':'websecure')
74.00
      C                   callp     wrtsection('ask')
75.00
      C                   endsr
76.00
       *=====================================================================
77.00
       * Start by displaying the validation list
78.00
       *=====================================================================
79.00
      C     StrVlDl       begsr
80.00
      C                   exsr      DspVldl
81.00
      C                   endsr
82.00
       *=====================================================================
83.00
       * Process a validation list maintenance request
84.00
       *=====================================================================
85.00
      C     Process       begsr
86.00
       * Check input data (do not come back if something wrong)
87.00
      C                   exsr      ChkInpDta
88.00
       *  Perform maintenance request
89.00
      C                   IF        InpErrSW = ' '
90.00
      C                   eval      Thsvldlnam = vldlnam
91.00
      C                   eval      Thsvldllib = vldllib
92.00
      C                   eval      ThsRequest = %subst(request:1:3)
93.00
      C                   eval      ThsUsrName = UsNamN
94.00
      C                   eval      ThsUsrPwd  = UsPwdN
95.00
      C                   eval      ThsUsrDes  = UsTxtN
96.00
      C                   callb     'WRKVLDLE'
97.00
      C                   parm                    Thsvldlnam
98.00
      C                   parm                    Thsvldllib
99.00
      C                   parm                    Thsrequest
100.00
      C                   parm                    ThsUsrName
101.00
      C                   parm                    ThsUsrPwd
102.00
      C                   parm                    ThsUsrDes
103.00
      C                   parm                    RetCode
104.00
      C                   ENDIF
105.00
       *  Display validation list
106.00
      C                   exsr      DspVldl
107.00
      C                   endsr
108.00
       *===========================================================================
109.00
       *  Display validation list
110.00
       *===========================================================================
111.00
      C     DspVldl       begsr
112.00
       *  Start HTML response
113.00
      C                   exsr      Resend
114.00
       *  List validation list entries
115.00
      C                   eval      Thsvldlnam = vldlnam
116.00
      C                   eval      Thsvldllib = vldllib
117.00
      C                   callb     'LSTVLDL'
118.00
      C                   parm                    Thsvldlnam
119.00
      C                   parm                    Thsvldllib
120.00
      C                   parm                    RetCode
121.00
      C                   endsr
122.00
       *===========================================================================
123.00
       * Check input data (do not come back if something wrong)
124.00
       *===========================================================================
125.00
      C     ChkInpDta     begsr
126.00
       * Set headings default colors
127.00
      C                   exsr      DftColor
128.00
       *
129.00
      C                   eval      InpErrSw = ' '
130.00
       *
131.00
      C                   IF        request = ' '
132.00
      C                   eval      InpErrSw = 'X'
133.00
      C                   ENDIF
134.00
       *
135.00
      C                   IF        request='ADD' or
136.00
      C                             request='CHG' or
137.00
      C                             request='RMV'
138.00
      C                   if        UsNamN = ' '
139.00
      C                   eval      InpErrSw = 'X'
140.00
      C                   eval      color01 = 'red'
141.00
      C                   endif
142.00
      C                   ENDIF
143.00
       *
144.00
      C                   IF        request='ADD'
145.00
      C                   if        UsNamN = ' '
146.00
      C                   eval      InpErrSw = 'X'
147.00
      C                   eval      color02 = 'red'
148.00
      C                   endif
149.00
      C                   if        UsTxtN = ' '
150.00
      C                   eval      InpErrSw = 'X'
151.00
      C                   eval      color03 = 'red'
152.00
      C                   endif
153.00
      C                   ENDIF
154.00
       *
155.00
      C                   IF        request='CHG'
156.00
      C                   IF        UsPwdN=' ' and
157.00
      C                             UsTxtN=' '
158.00
      C                   if        UsPwdN=' '
159.00
      C                   eval      InpErrSw = 'X'
160.00
      C                   eval      color02 = 'red'
161.00
      C                   endif
162.00
      C                   if        UsTxtN=' '
163.00
      C                   eval      InpErrSw = 'X'
164.00
      C                   eval      color03 = 'red'
165.00
      C                   endif
166.00
      C                   ENDIF
167.00
      C                   ENDIF
168.00
       *
169.00
      C                   endsr
170.00
       *=====================================================================
171.00
       * Resend html
172.00
       *=====================================================================
173.00
      C     Resend        begsr
174.00
       * If vldl maintenance function performed
175.00
      C                   if        InpErrSW=' ' and
176.00
      C                             RetCode=' '
177.00
      C                   eval      UsNamN = *blanks
178.00
      C                   eval      UsPwdN = *blanks
179.00
      C                   eval      UsTxtN = *blanks
180.00
      C                   endif
181.00
       * If vldl maintenance function not performed
182.00
      C                   if        RetCode <> ' '
183.00
      C                   callp     wrtsection('vldlerr' + RetCode)
184.00
      C                   endif
185.00
       * Issue input form
186.00
      C                   exsr      SetTop
187.00
      C                   callp     wrtsection('form')
188.00
       *
189.00
      C                   endsr
190.00
       *=====================================================================
191.00
       *  Set variable data for section /$top
192.00
       *=====================================================================
193.00
      C     SetTop        begsr
194.00
      C                   if        vldllib<>' ' and vldlnam<>' '
195.00
      C                   callp     updhtmlvar('fullvldl':
196.00
      C                             %trim(vldllib) + '/' +%trim(vldlnam))
197.00
      C                   else
198.00
      C                   callp     updhtmlvar('fullvldl':' ')
199.00
      C                   endif
200.00
      C                   callp     updHtmlVar('vldlnam':vldlnam)
201.00
      C                   callp     updHtmlVar('vldllib':vldllib)
202.00
      C                   if        vldlnam=' '
203.00
      C                   callp     updHtmlVar('xxxvldl':vldlnam)
204.00
      C                   else
205.00
      C                   callp     updHtmlVar('xxxvldl':%trim(vldllib) + '/' +
206.00
      C                             vldlnam)
207.00
      C                   endif
208.00
       * User name
209.00
      C                   callp     updHtmlVar('USNAMN':UsNamN)
210.00
       * User password
211.00
      C                   callp     updHtmlVar('USPWDN':UsPwdN)
212.00
       * User description
213.00
      C                   callp     updHtmlVar('USTXTN':UsTxtN)
214.00
       * Colors
215.00
      C                   callp     updHtmlVar('COLOR01':Color01)
216.00
      C                   callp     updHtmlVar('COLOR02':Color02)
217.00
      C                   callp     updHtmlVar('COLOR03':Color03)
218.00
      C                   endsr
219.00
       *=====================================================================
220.00
       * Set headings default colors
221.00
       *=====================================================================
222.00
      C     DftColor      begsr
223.00
      C                   eval      color01 = 'black'
224.00
      C                   eval      color02 = 'black'
225.00
      C                   eval      color03 = 'black'
226.00
      C                   endsr
227.00
       *=====================================================================
228.00
       * Send html output buffer and quit
229.00
       *=====================================================================
230.00
      C     Exit          begsr
231.00
       * End html, send output buffer
232.00
      C                   callp     wrtsection('end *fini')
233.00
       * Quit
234.00
      C                   return
235.00
      C                   endsr
0.041 sec.s