w-bestellung.w 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679
  1. &ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r12 GUI ADM1
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. */
  5. &Scoped-define WINDOW-NAME W-Win
  6. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS W-Win
  7. /*------------------------------------------------------------------------
  8. File:
  9. Description: from cntnrwin.w - ADM SmartWindow Template
  10. Input Parameters:
  11. <none>
  12. Output Parameters:
  13. <none>
  14. History:
  15. ------------------------------------------------------------------------*/
  16. /* This .W file was created with the Progress UIB. */
  17. /*----------------------------------------------------------------------*/
  18. /* Create an unnamed pool to store all the widgets created
  19. by this procedure. This is a good default which assures
  20. that this procedure's triggers and internal procedures
  21. will execute in this procedure's storage, and that proper
  22. cleanup will occur on deletion of the procedure. */
  23. CREATE WIDGET-POOL.
  24. /* *************************** Definitions ************************** */
  25. /* Parameters Definitions --- */
  26. /* Local Variable Definitions --- */
  27. DEF VAR Aktive AS LOG NO-UNDO.
  28. DEF VAR ASeite AS INT NO-UNDO.
  29. DEF VAR PSeite AS INT NO-UNDO.
  30. DEF VAR EscFlag AS LOG NO-UNDO INIT FALSE.
  31. DEF VAR EndFlag AS LOG NO-UNDO INIT TRUE .
  32. /* ---------- Globale Variablen ---------------------------------- */
  33. { v8/globvar.i" " " " "SHARED" }
  34. { v8/debivar.i " " " " "SHARED" }
  35. { v8/artivar.i " " " " "SHARED" }
  36. { v8/contvar.i " " " " "SHARED" }
  37. /* _UIB-CODE-BLOCK-END */
  38. &ANALYZE-RESUME
  39. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  40. /* ******************** Preprocessor Definitions ******************** */
  41. &Scoped-define PROCEDURE-TYPE SmartWindow
  42. &Scoped-define DB-AWARE no
  43. &Scoped-define ADM-CONTAINER WINDOW
  44. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  45. &Scoped-define FRAME-NAME F-Main
  46. /* Standard List Definitions */
  47. &Scoped-Define ENABLED-OBJECTS Btn_Prev Btn_Next
  48. /* Custom List Definitions */
  49. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  50. /* _UIB-PREPROCESSOR-BLOCK-END */
  51. &ANALYZE-RESUME
  52. /* *********************** Control Definitions ********************** */
  53. /* Define the widget handle for the window */
  54. DEFINE VAR W-Win AS WIDGET-HANDLE NO-UNDO.
  55. /* Definitions of handles for SmartObjects */
  56. DEFINE VARIABLE h_b-artlief-lnr AS HANDLE NO-UNDO.
  57. DEFINE VARIABLE h_b-bestell-gebinde AS HANDLE NO-UNDO.
  58. DEFINE VARIABLE h_f-besko AS HANDLE NO-UNDO.
  59. DEFINE VARIABLE h_f-bestgebinfo AS HANDLE NO-UNDO.
  60. DEFINE VARIABLE h_f-besze AS HANDLE NO-UNDO.
  61. DEFINE VARIABLE h_folder AS HANDLE NO-UNDO.
  62. /* Definitions of the field level widgets */
  63. DEFINE BUTTON Btn_Next
  64. IMAGE-UP FILE "Grafik\nextkartei":U
  65. LABEL "&+"
  66. SIZE 5.6 BY 1.05.
  67. DEFINE BUTTON Btn_Prev
  68. IMAGE-UP FILE "Grafik\prevkartei":U
  69. LABEL "&-"
  70. SIZE 5.6 BY 1.05.
  71. /* ************************ Frame Definitions *********************** */
  72. DEFINE FRAME F-Main
  73. Btn_Prev AT ROW 2.52 COL 125.8
  74. Btn_Next AT ROW 2.52 COL 131.4
  75. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  76. SIDE-LABELS NO-UNDERLINE THREE-D
  77. AT COL 1 ROW 1
  78. SIZE 154 BY 24.53.
  79. /* *********************** Procedure Settings ************************ */
  80. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  81. /* Settings for THIS-PROCEDURE
  82. Type: SmartWindow
  83. Allow: Basic,Browse,DB-Fields,Query,Smart,Window
  84. Design Page: 1
  85. Other Settings: COMPILE
  86. */
  87. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  88. /* ************************* Create Window ************************** */
  89. &ANALYZE-SUSPEND _CREATE-WINDOW
  90. IF SESSION:DISPLAY-TYPE = "GUI":U THEN
  91. CREATE WINDOW W-Win ASSIGN
  92. HIDDEN = YES
  93. TITLE = "Bestellwesen"
  94. HEIGHT = 24.48
  95. WIDTH = 139.6
  96. MAX-HEIGHT = 54.19
  97. MAX-WIDTH = 384
  98. VIRTUAL-HEIGHT = 54.19
  99. VIRTUAL-WIDTH = 384
  100. RESIZE = no
  101. SCROLL-BARS = no
  102. STATUS-AREA = no
  103. BGCOLOR = ?
  104. FGCOLOR = ?
  105. THREE-D = yes
  106. MESSAGE-AREA = no
  107. SENSITIVE = yes.
  108. ELSE {&WINDOW-NAME} = CURRENT-WINDOW.
  109. /* END WINDOW DEFINITION */
  110. &ANALYZE-RESUME
  111. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB W-Win
  112. /* ************************* Included-Libraries *********************** */
  113. {src/adm/method/containr.i}
  114. /* _UIB-CODE-BLOCK-END */
  115. &ANALYZE-RESUME
  116. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  117. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  118. /* SETTINGS FOR WINDOW W-Win
  119. VISIBLE,,RUN-PERSISTENT */
  120. /* SETTINGS FOR FRAME F-Main
  121. FRAME-NAME */
  122. IF SESSION:DISPLAY-TYPE = "GUI":U AND VALID-HANDLE(W-Win)
  123. THEN W-Win:HIDDEN = yes.
  124. /* _RUN-TIME-ATTRIBUTES-END */
  125. &ANALYZE-RESUME
  126. /* ************************ Control Triggers ************************ */
  127. &Scoped-define SELF-NAME W-Win
  128. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL W-Win W-Win
  129. ON ENTRY OF W-Win /* Bestellwesen */
  130. DO:
  131. Aktive = TRUE.
  132. END.
  133. /* _UIB-CODE-BLOCK-END */
  134. &ANALYZE-RESUME
  135. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL W-Win W-Win
  136. ON LEAVE OF W-Win /* Bestellwesen */
  137. DO:
  138. Aktive = FALSE.
  139. END.
  140. /* _UIB-CODE-BLOCK-END */
  141. &ANALYZE-RESUME
  142. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL W-Win W-Win
  143. ON WINDOW-CLOSE OF W-Win /* Bestellwesen */
  144. DO:
  145. EndFlag = TRUE.
  146. RUN WINDOWCLOSE.
  147. RETURN NO-APPLY.
  148. END.
  149. /* _UIB-CODE-BLOCK-END */
  150. &ANALYZE-RESUME
  151. &Scoped-define SELF-NAME Btn_Next
  152. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Next W-Win
  153. ON CHOOSE OF Btn_Next IN FRAME F-Main /* + */
  154. DO:
  155. IF NOT Aktive THEN RETURN NO-APPLY.
  156. RUN state-changed ( INPUT THIS-PROCEDURE, INPUT 'Next_Page':U ).
  157. RETURN NO-APPLY.
  158. END.
  159. /* _UIB-CODE-BLOCK-END */
  160. &ANALYZE-RESUME
  161. &Scoped-define SELF-NAME Btn_Prev
  162. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Prev W-Win
  163. ON CHOOSE OF Btn_Prev IN FRAME F-Main /* - */
  164. DO:
  165. IF NOT Aktive THEN RETURN NO-APPLY.
  166. RUN state-changed ( INPUT THIS-PROCEDURE, INPUT 'Prev_Page':U ).
  167. RETURN NO-APPLY.
  168. END.
  169. /* _UIB-CODE-BLOCK-END */
  170. &ANALYZE-RESUME
  171. &UNDEFINE SELF-NAME
  172. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK W-Win
  173. /* *************************** Main Block *************************** */
  174. /* Include custom Main Block code for SmartWindows. */
  175. SUBSCRIBE TO 'CLOSEBESTELLWESEN' ANYWHERE RUN-PROCEDURE 'WINDOWCLOSE' NO-ERROR.
  176. DEF VAR xString AS CHAR NO-UNDO.
  177. GET-KEY-VALUE SECTION 'GrundEinstellungen'
  178. KEY 'EscapeAufBestellwesen'
  179. VALUE xString.
  180. IF xString = ? THEN xString = ''.
  181. IF xString = '' THEN DO:
  182. xString = 'ja'.
  183. PUT-KEY-VALUE SECTION 'GrundEinstellungen'
  184. KEY 'EscapeAufBestellwesen'
  185. VALUE xString NO-ERROR.
  186. END.
  187. IF xString BEGINS 'n' THEN EscFlag = FALSE.
  188. ELSE EscFlag = TRUE .
  189. EndFlag = FALSE.
  190. ON 'ALT-+':U OF {&WINDOW-NAME} ANYWHERE
  191. DO:
  192. APPLY 'CHOOSE' TO Btn_Next IN FRAME {&FRAME-NAME}.
  193. RETURN NO-APPLY.
  194. END.
  195. ON 'ALT-CURSOR-RIGHT':U OF {&WINDOW-NAME} ANYWHERE
  196. DO:
  197. APPLY 'CHOOSE' TO Btn_Next IN FRAME {&FRAME-NAME}.
  198. RETURN NO-APPLY.
  199. END.
  200. ON 'ALT--':U OF {&WINDOW-NAME} ANYWHERE
  201. DO:
  202. APPLY 'CHOOSE' TO Btn_Prev IN FRAME {&FRAME-NAME}.
  203. RETURN NO-APPLY.
  204. END.
  205. ON 'ALT-CURSOR-LEFT':U OF {&WINDOW-NAME} ANYWHERE
  206. DO:
  207. APPLY 'CHOOSE' TO Btn_Prev IN FRAME {&FRAME-NAME}.
  208. RETURN NO-APPLY.
  209. END.
  210. ON 'END-ERROR':U OF {&WINDOW-NAME} ANYWHERE
  211. DO:
  212. RUN WINDOWCLOSE.
  213. RETURN NO-APPLY.
  214. END.
  215. {src/adm/template/windowmn.i}
  216. /* _UIB-CODE-BLOCK-END */
  217. &ANALYZE-RESUME
  218. /* ********************** Internal Procedures *********************** */
  219. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects W-Win _ADM-CREATE-OBJECTS
  220. PROCEDURE adm-create-objects :
  221. /*------------------------------------------------------------------------------
  222. Purpose: Create handles for all SmartObjects used in this procedure.
  223. After SmartObjects are initialized, then SmartLinks are added.
  224. Parameters: <none>
  225. ------------------------------------------------------------------------------*/
  226. DEFINE VARIABLE adm-current-page AS INTEGER NO-UNDO.
  227. RUN get-attribute IN THIS-PROCEDURE ('Current-Page':U).
  228. ASSIGN adm-current-page = INTEGER(RETURN-VALUE).
  229. CASE adm-current-page:
  230. WHEN 0 THEN DO:
  231. RUN init-object IN THIS-PROCEDURE (
  232. INPUT 'src_dlcv91c/template/folder.w':U ,
  233. INPUT FRAME F-Main:HANDLE ,
  234. INPUT 'FOLDER-LABELS = ':U + 'Kopf|Zeile|Gebinde|Geb.übersicht|Art-Übersicht' + ',
  235. FOLDER-TAB-TYPE = 1':U ,
  236. OUTPUT h_folder ).
  237. RUN set-position IN h_folder ( 1.19 , 1.00 ) NO-ERROR.
  238. RUN set-size IN h_folder ( 24.29 , 140.40 ) NO-ERROR.
  239. /* Links to SmartFolder h_folder. */
  240. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_folder ).
  241. RUN add-link IN adm-broker-hdl ( h_folder , 'Page':U , THIS-PROCEDURE ).
  242. /* Adjust the tab order of the smart objects. */
  243. RUN adjust-tab-order IN adm-broker-hdl ( h_folder ,
  244. Btn_Prev:HANDLE IN FRAME F-Main , 'BEFORE':U ).
  245. END. /* Page 0 */
  246. WHEN 1 THEN DO:
  247. RUN init-object IN THIS-PROCEDURE (
  248. INPUT 'v8/f-besko.w':U ,
  249. INPUT FRAME F-Main:HANDLE ,
  250. INPUT 'Layout = ':U ,
  251. OUTPUT h_f-besko ).
  252. RUN set-position IN h_f-besko ( 3.71 , 3.60 ) NO-ERROR.
  253. /* Size in UIB: ( 21.29 , 133.00 ) */
  254. /* Links to SmartFrame h_f-besko. */
  255. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_f-besko ).
  256. /* Adjust the tab order of the smart objects. */
  257. RUN adjust-tab-order IN adm-broker-hdl ( h_f-besko ,
  258. Btn_Next:HANDLE IN FRAME F-Main , 'AFTER':U ).
  259. END. /* Page 1 */
  260. WHEN 2 THEN DO:
  261. RUN init-object IN THIS-PROCEDURE (
  262. INPUT 'v8/f-besze.w':U ,
  263. INPUT FRAME F-Main:HANDLE ,
  264. INPUT 'Layout = ,
  265. Hide-on-Init = no':U ,
  266. OUTPUT h_f-besze ).
  267. RUN set-position IN h_f-besze ( 3.86 , 2.20 ) NO-ERROR.
  268. /* Size in UIB: ( 20.76 , 134.80 ) */
  269. /* Links to SmartFrame h_f-besze. */
  270. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_f-besze ).
  271. /* Adjust the tab order of the smart objects. */
  272. RUN adjust-tab-order IN adm-broker-hdl ( h_f-besze ,
  273. Btn_Next:HANDLE IN FRAME F-Main , 'AFTER':U ).
  274. END. /* Page 2 */
  275. WHEN 3 THEN DO:
  276. RUN init-object IN THIS-PROCEDURE (
  277. INPUT 'v8/b-bestell-gebinde.w':U ,
  278. INPUT {&WINDOW-NAME} ,
  279. INPUT 'Layout = ':U ,
  280. OUTPUT h_b-bestell-gebinde ).
  281. RUN set-position IN h_b-bestell-gebinde ( 3.05 , 13.00 ) NO-ERROR.
  282. RUN set-size IN h_b-bestell-gebinde ( 22.00 , 111.80 ) NO-ERROR.
  283. /* Links to SmartBrowser h_b-bestell-gebinde. */
  284. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_b-bestell-gebinde ).
  285. END. /* Page 3 */
  286. WHEN 4 THEN DO:
  287. RUN init-object IN THIS-PROCEDURE (
  288. INPUT 'v8/f-bestgebinfo.w':U ,
  289. INPUT FRAME F-Main:HANDLE ,
  290. INPUT 'Layout = ,
  291. Hide-on-Init = no':U ,
  292. OUTPUT h_f-bestgebinfo ).
  293. RUN set-position IN h_f-bestgebinfo ( 4.43 , 6.20 ) NO-ERROR.
  294. /* Size in UIB: ( 19.62 , 119.60 ) */
  295. /* Links to SmartFrame h_f-bestgebinfo. */
  296. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_f-bestgebinfo ).
  297. /* Adjust the tab order of the smart objects. */
  298. RUN adjust-tab-order IN adm-broker-hdl ( h_f-bestgebinfo ,
  299. Btn_Next:HANDLE IN FRAME F-Main , 'AFTER':U ).
  300. END. /* Page 4 */
  301. WHEN 5 THEN DO:
  302. RUN init-object IN THIS-PROCEDURE (
  303. INPUT 'v8/b-artlief-lnr.w':U ,
  304. INPUT FRAME F-Main:HANDLE ,
  305. INPUT 'Initial-Lock = NO-LOCK,
  306. Hide-on-Init = no,
  307. Disable-on-Init = no,
  308. Layout = ,
  309. Create-On-Add = ?':U ,
  310. OUTPUT h_b-artlief-lnr ).
  311. RUN set-position IN h_b-artlief-lnr ( 4.14 , 6.60 ) NO-ERROR.
  312. RUN set-size IN h_b-artlief-lnr ( 20.00 , 120.00 ) NO-ERROR.
  313. /* Adjust the tab order of the smart objects. */
  314. RUN adjust-tab-order IN adm-broker-hdl ( h_b-artlief-lnr ,
  315. Btn_Next:HANDLE IN FRAME F-Main , 'AFTER':U ).
  316. END. /* Page 5 */
  317. END CASE.
  318. /* Select a Startup page. */
  319. IF adm-current-page eq 0
  320. THEN RUN select-page IN THIS-PROCEDURE ( 1 ).
  321. END PROCEDURE.
  322. /* _UIB-CODE-BLOCK-END */
  323. &ANALYZE-RESUME
  324. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available W-Win _ADM-ROW-AVAILABLE
  325. PROCEDURE adm-row-available :
  326. /*------------------------------------------------------------------------------
  327. Purpose: Dispatched to this procedure when the Record-
  328. Source has a new row available. This procedure
  329. tries to get the new row (or foriegn keys) from
  330. the Record-Source and process it.
  331. Parameters: <none>
  332. ------------------------------------------------------------------------------*/
  333. /* Define variables needed by this internal procedure. */
  334. {src/adm/template/row-head.i}
  335. /* Process the newly available records (i.e. display fields,
  336. open queries, and/or pass records on to any RECORD-TARGETS). */
  337. {src/adm/template/row-end.i}
  338. END PROCEDURE.
  339. /* _UIB-CODE-BLOCK-END */
  340. &ANALYZE-RESUME
  341. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI W-Win _DEFAULT-DISABLE
  342. PROCEDURE disable_UI :
  343. /*------------------------------------------------------------------------------
  344. Purpose: DISABLE the User Interface
  345. Parameters: <none>
  346. Notes: Here we clean-up the user-interface by deleting
  347. dynamic widgets we have created and/or hide
  348. frames. This procedure is usually called when
  349. we are ready to "clean-up" after running.
  350. ------------------------------------------------------------------------------*/
  351. /* Delete the WINDOW we created */
  352. IF SESSION:DISPLAY-TYPE = "GUI":U AND VALID-HANDLE(W-Win)
  353. THEN DELETE WIDGET W-Win.
  354. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  355. END PROCEDURE.
  356. /* _UIB-CODE-BLOCK-END */
  357. &ANALYZE-RESUME
  358. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI W-Win _DEFAULT-ENABLE
  359. PROCEDURE enable_UI :
  360. /*------------------------------------------------------------------------------
  361. Purpose: ENABLE the User Interface
  362. Parameters: <none>
  363. Notes: Here we display/view/enable the widgets in the
  364. user-interface. In addition, OPEN all queries
  365. associated with each FRAME and BROWSE.
  366. These statements here are based on the "Other
  367. Settings" section of the widget Property Sheets.
  368. ------------------------------------------------------------------------------*/
  369. ENABLE Btn_Prev Btn_Next
  370. WITH FRAME F-Main IN WINDOW W-Win.
  371. {&OPEN-BROWSERS-IN-QUERY-F-Main}
  372. VIEW W-Win.
  373. END PROCEDURE.
  374. /* _UIB-CODE-BLOCK-END */
  375. &ANALYZE-RESUME
  376. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE InitializeObject W-Win
  377. PROCEDURE InitializeObject :
  378. /*------------------------------------------------------------------------------
  379. Purpose:
  380. Parameters: <none>
  381. Notes:
  382. ------------------------------------------------------------------------------*/
  383. RUN adm-initialize.
  384. END PROCEDURE.
  385. /* _UIB-CODE-BLOCK-END */
  386. &ANALYZE-RESUME
  387. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-change-page W-Win
  388. PROCEDURE local-change-page :
  389. /*------------------------------------------------------------------------------
  390. Purpose: Override standard ADM method
  391. Notes:
  392. ------------------------------------------------------------------------------*/
  393. DEF VAR ASeite AS INT NO-UNDO.
  394. DEF VAR XSeite AS INT NO-UNDO.
  395. RUN get-attribute ('current-page':U).
  396. ASeite = INTEGER(RETURN-VALUE).
  397. RUN dispatch IN THIS-PROCEDURE ( INPUT 'change-page':U ) .
  398. RUN get-attribute ('current-page':U).
  399. XSeite = INTEGER(RETURN-VALUE).
  400. DO WITH FRAME {&FRAME-NAME}:
  401. IF XSeite = 1 THEN DO:
  402. RUN state-changed IN h_f-besko (INPUT THIS-PROCEDURE, INPUT 'browser_entry':U ).
  403. RETURN NO-APPLY.
  404. END.
  405. IF XSeite = 2 THEN DO:
  406. RUN state-changed IN h_f-besze (INPUT THIS-PROCEDURE, INPUT 'browser_entry':U ).
  407. RETURN NO-APPLY.
  408. END.
  409. /*
  410. IF XSeite = 3 THEN DO:
  411. FIND Besko USE-INDEX Besko-k1
  412. WHERE Besko.Firma = GVFirma
  413. AND Besko.Besnr = LVBesnr NO-LOCK NO-ERROR.
  414. IF AVAILABLE Besko AND
  415. Besko.Best_Sta <> 2 THEN DO:
  416. MESSAGE 'Bestellung ist im falschen Satus ' VIEW-AS ALERT-BOX.
  417. RUN select-page ( ASeite ).
  418. RUN view-page ( ASeite ).
  419. END.
  420. /*
  421. RUN state-changed IN h_b-aufgebko (INPUT THIS-PROCEDURE, INPUT 'browser_entry':U ).
  422. */
  423. RETURN NO-APPLY.
  424. END.
  425. IF XSeite = 4 THEN DO:
  426. DISABLE Btn_Drucken.
  427. RETURN NO-APPLY.
  428. END.
  429. */
  430. END.
  431. END PROCEDURE.
  432. /* _UIB-CODE-BLOCK-END */
  433. &ANALYZE-RESUME
  434. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-exit W-Win
  435. PROCEDURE local-exit :
  436. /* -----------------------------------------------------------
  437. Purpose: Starts an "exit" by APPLYing CLOSE event, which starts "destroy".
  438. Parameters: <none>
  439. Notes: If activated, should APPLY CLOSE, *not* dispatch adm-exit.
  440. -------------------------------------------------------------*/
  441. APPLY "CLOSE":U TO THIS-PROCEDURE.
  442. RETURN.
  443. END PROCEDURE.
  444. /* _UIB-CODE-BLOCK-END */
  445. &ANALYZE-RESUME
  446. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records W-Win _ADM-SEND-RECORDS
  447. PROCEDURE send-records :
  448. /*------------------------------------------------------------------------------
  449. Purpose: Send record ROWID's for all tables used by
  450. this file.
  451. Parameters: see template/snd-head.i
  452. ------------------------------------------------------------------------------*/
  453. /* SEND-RECORDS does nothing because there are no External
  454. Tables specified for this SmartWindow, and there are no
  455. tables specified in any contained Browse, Query, or Frame. */
  456. END PROCEDURE.
  457. /* _UIB-CODE-BLOCK-END */
  458. &ANALYZE-RESUME
  459. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE state-changed W-Win
  460. PROCEDURE state-changed :
  461. /* -----------------------------------------------------------
  462. Purpose:
  463. Parameters: <none>
  464. Notes:
  465. -------------------------------------------------------------*/
  466. DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO.
  467. DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO.
  468. DEF VAR MaxPages AS INT INIT 4 NO-UNDO.
  469. CASE p-state:
  470. WHEN 'Next_Page' THEN DO:
  471. IF NOT Aktive THEN RETURN NO-APPLY.
  472. RUN get-attribute ('current-page':U).
  473. ASeite = INTEGER(RETURN-VALUE) + 1.
  474. IF ASeite > MaxPages THEN ASeite = 1.
  475. RUN select-page(ASeite).
  476. RUN view-page (ASeite).
  477. RETURN NO-APPLY.
  478. END.
  479. WHEN 'Prev_Page' THEN DO:
  480. IF NOT Aktive THEN RETURN NO-APPLY.
  481. RUN get-attribute ('current-page':U).
  482. ASeite = INTEGER(RETURN-VALUE) - 1.
  483. IF ASeite < 1 THEN ASeite = MaxPages.
  484. RUN select-page(ASeite).
  485. RUN view-page (ASeite).
  486. RETURN NO-APPLY.
  487. END.
  488. WHEN 'seite_2' THEN DO:
  489. RUN select-page ( 2 ).
  490. RUN view-page ( 2 ).
  491. END.
  492. WHEN 'ENDE' THEN DO:
  493. RUN WINDOWCLOSE.
  494. RETURN NO-APPLY.
  495. END.
  496. END CASE.
  497. END PROCEDURE.
  498. /* _UIB-CODE-BLOCK-END */
  499. &ANALYZE-RESUME
  500. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE WINDOWCLOSE W-Win
  501. PROCEDURE WINDOWCLOSE :
  502. /*------------------------------------------------------------------------------
  503. Purpose:
  504. Parameters: <none>
  505. Notes:
  506. ------------------------------------------------------------------------------*/
  507. DEF VAR AktSeite AS INT NO-UNDO.
  508. RUN get-attribute ('current-page':U).
  509. AktSeite = INTEGER(RETURN-VALUE).
  510. IF AktSeite <> 1 THEN DO:
  511. RUN select-page(1).
  512. RUN view-page (1).
  513. RETURN NO-APPLY.
  514. END.
  515. IF NOT EscFlag THEN DO:
  516. IF NOT EndFlag THEN DO:
  517. EndFlag = FALSE.
  518. RETURN NO-APPLY.
  519. END.
  520. END.
  521. RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ).
  522. APPLY "CLOSE":U TO THIS-PROCEDURE.
  523. RETURN NO-APPLY.
  524. END PROCEDURE.
  525. /* _UIB-CODE-BLOCK-END */
  526. &ANALYZE-RESUME