d-bonusabrechnung.w 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532
  1. &ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r12 GUI ADM1
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. */
  5. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  6. &Scoped-define FRAME-NAME D-Dialog
  7. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS D-Dialog
  8. /*------------------------------------------------------------------------
  9. File:
  10. Description: from cntnrdlg.w - ADM SmartDialog Template
  11. Input Parameters:
  12. <none>
  13. Output Parameters:
  14. <none>
  15. Author:
  16. Created:
  17. ------------------------------------------------------------------------*/
  18. /* This .W file was created with the Progress UIB. */
  19. /*----------------------------------------------------------------------*/
  20. /* Create an unnamed pool to store all the widgets created
  21. by this procedure. This is a good default which assures
  22. that this procedure's triggers and internal procedures
  23. will execute in this procedure's storage, and that proper
  24. cleanup will occur on deletion of the procedure. */
  25. CREATE WIDGET-POOL.
  26. /* *************************** Definitions ************************** */
  27. /* Parameters Definitions --- */
  28. /* Local Variable Definitions --- */
  29. DEF VAR iLager AS INT NO-UNDO.
  30. /* _UIB-CODE-BLOCK-END */
  31. &ANALYZE-RESUME
  32. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  33. /* ******************** Preprocessor Definitions ******************** */
  34. &Scoped-define PROCEDURE-TYPE SmartDialog
  35. &Scoped-define DB-AWARE no
  36. &Scoped-define ADM-CONTAINER DIALOG-BOX
  37. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  38. &Scoped-define FRAME-NAME D-Dialog
  39. /* Standard List Definitions */
  40. &Scoped-Define ENABLED-OBJECTS CB_Lager
  41. &Scoped-Define DISPLAYED-OBJECTS CB_Lager
  42. /* Custom List Definitions */
  43. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  44. /* _UIB-PREPROCESSOR-BLOCK-END */
  45. &ANALYZE-RESUME
  46. /* *********************** Control Definitions ********************** */
  47. /* Define a dialog box */
  48. /* Definitions of handles for SmartObjects */
  49. DEFINE VARIABLE h_f-bonberech AS HANDLE NO-UNDO.
  50. DEFINE VARIABLE h_f-bondrucken AS HANDLE NO-UNDO.
  51. DEFINE VARIABLE h_f-bonverbuchte AS HANDLE NO-UNDO.
  52. DEFINE VARIABLE h_folder AS HANDLE NO-UNDO.
  53. /* Definitions of the field level widgets */
  54. DEFINE VARIABLE CB_Lager AS CHARACTER FORMAT "X(256)":U
  55. LABEL "Lager"
  56. VIEW-AS COMBO-BOX INNER-LINES 5
  57. LIST-ITEM-PAIRS "Item 1","Item 1"
  58. DROP-DOWN-LIST
  59. SIZE 30 BY 1 NO-UNDO.
  60. /* ************************ Frame Definitions *********************** */
  61. DEFINE FRAME D-Dialog
  62. CB_Lager AT ROW 2.52 COL 16.6 COLON-ALIGNED WIDGET-ID 2
  63. SPACE(87.62) SKIP(16.47)
  64. WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
  65. SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
  66. TITLE "Bonusabrechung".
  67. /* *********************** Procedure Settings ************************ */
  68. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  69. /* Settings for THIS-PROCEDURE
  70. Type: SmartDialog
  71. Allow: Basic,Browse,DB-Fields,Query,Smart
  72. Design Page: 1
  73. Other Settings: COMPILE
  74. */
  75. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  76. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB D-Dialog
  77. /* ************************* Included-Libraries *********************** */
  78. {src/adm/method/containr.i}
  79. /* _UIB-CODE-BLOCK-END */
  80. &ANALYZE-RESUME
  81. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  82. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  83. /* SETTINGS FOR DIALOG-BOX D-Dialog
  84. FRAME-NAME */
  85. ASSIGN
  86. FRAME D-Dialog:SCROLLABLE = FALSE
  87. FRAME D-Dialog:HIDDEN = TRUE.
  88. /* _RUN-TIME-ATTRIBUTES-END */
  89. &ANALYZE-RESUME
  90. /* Setting information for Queries and Browse Widgets fields */
  91. &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX D-Dialog
  92. /* Query rebuild information for DIALOG-BOX D-Dialog
  93. _Options = "SHARE-LOCK"
  94. _Query is NOT OPENED
  95. */ /* DIALOG-BOX D-Dialog */
  96. &ANALYZE-RESUME
  97. /* ************************ Control Triggers ************************ */
  98. &Scoped-define SELF-NAME D-Dialog
  99. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL D-Dialog D-Dialog
  100. ON END-ERROR OF FRAME D-Dialog /* Bonusabrechung */
  101. DO:
  102. RUN WINDOWCLOSE.
  103. RETURN NO-APPLY.
  104. END.
  105. /* _UIB-CODE-BLOCK-END */
  106. &ANALYZE-RESUME
  107. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL D-Dialog D-Dialog
  108. ON GO OF FRAME D-Dialog /* Bonusabrechung */
  109. DO:
  110. RUN WINDOWCLOSE.
  111. RETURN NO-APPLY.
  112. END.
  113. /* _UIB-CODE-BLOCK-END */
  114. &ANALYZE-RESUME
  115. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL D-Dialog D-Dialog
  116. ON WINDOW-CLOSE OF FRAME D-Dialog /* Bonusabrechung */
  117. DO:
  118. RUN WINDOWCLOSE.
  119. END.
  120. /* _UIB-CODE-BLOCK-END */
  121. &ANALYZE-RESUME
  122. &Scoped-define SELF-NAME CB_Lager
  123. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Lager D-Dialog
  124. ON END-ERROR OF CB_Lager IN FRAME D-Dialog /* Lager */
  125. DO:
  126. RUN state-changed ( INPUT THIS-PROCEDURE, INPUT 'ENDE' ).
  127. RETURN NO-APPLY.
  128. END.
  129. /* _UIB-CODE-BLOCK-END */
  130. &ANALYZE-RESUME
  131. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Lager D-Dialog
  132. ON ENDKEY OF CB_Lager IN FRAME D-Dialog /* Lager */
  133. DO:
  134. RUN WINDOWCLOSE.
  135. RETURN NO-APPLY.
  136. END.
  137. /* _UIB-CODE-BLOCK-END */
  138. &ANALYZE-RESUME
  139. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Lager D-Dialog
  140. ON VALUE-CHANGED OF CB_Lager IN FRAME D-Dialog /* Lager */
  141. DO:
  142. DEF VAR cBenutzer AS CHAR NO-UNDO.
  143. iLager = INTEGER(SELF:SCREEN-VALUE).
  144. PUBLISH 'BONUSLAGER' ( iLager ).
  145. RETURN NO-APPLY.
  146. END.
  147. /* _UIB-CODE-BLOCK-END */
  148. &ANALYZE-RESUME
  149. &UNDEFINE SELF-NAME
  150. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK D-Dialog
  151. /* *************************** Main Block *************************** */
  152. {src/adm/template/dialogmn.i}
  153. SUBSCRIBE TO 'GETBONUSLAGER' ANYWHERE.
  154. ON 'END-ERROR' OF {&WINDOW-NAME} ANYWHERE
  155. DO:
  156. RUN new-state ( INPUT 'ENDE, MAIN':U ).
  157. RETURN NO-APPLY.
  158. END.
  159. /* _UIB-CODE-BLOCK-END */
  160. &ANALYZE-RESUME
  161. /* ********************** Internal Procedures *********************** */
  162. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects D-Dialog _ADM-CREATE-OBJECTS
  163. PROCEDURE adm-create-objects :
  164. /*------------------------------------------------------------------------------
  165. Purpose: Create handles for all SmartObjects used in this procedure.
  166. After SmartObjects are initialized, then SmartLinks are added.
  167. Parameters: <none>
  168. ------------------------------------------------------------------------------*/
  169. DEFINE VARIABLE adm-current-page AS INTEGER NO-UNDO.
  170. RUN get-attribute IN THIS-PROCEDURE ('Current-Page':U).
  171. ASSIGN adm-current-page = INTEGER(RETURN-VALUE).
  172. CASE adm-current-page:
  173. WHEN 0 THEN DO:
  174. RUN init-object IN THIS-PROCEDURE (
  175. INPUT 'src_dlcv91c/template/folder.w':U ,
  176. INPUT FRAME D-Dialog:HANDLE ,
  177. INPUT 'FOLDER-LABELS = ':U + 'Berechnen|Drucken|Verbuchte' + ',
  178. FOLDER-TAB-TYPE = 1':U ,
  179. OUTPUT h_folder ).
  180. RUN set-position IN h_folder ( 1.00 , 1.00 ) NO-ERROR.
  181. RUN set-size IN h_folder ( 18.57 , 135.20 ) NO-ERROR.
  182. /* Links to SmartFolder h_folder. */
  183. RUN add-link IN adm-broker-hdl ( h_folder , 'Page':U , THIS-PROCEDURE ).
  184. /* Adjust the tab order of the smart objects. */
  185. RUN adjust-tab-order IN adm-broker-hdl ( h_folder ,
  186. CB_Lager:HANDLE , 'BEFORE':U ).
  187. END. /* Page 0 */
  188. WHEN 1 THEN DO:
  189. RUN init-object IN THIS-PROCEDURE (
  190. INPUT 'v8/f-bonberech.w':U ,
  191. INPUT FRAME D-Dialog:HANDLE ,
  192. INPUT 'Layout = ':U ,
  193. OUTPUT h_f-bonberech ).
  194. RUN set-position IN h_f-bonberech ( 4.14 , 3.40 ) NO-ERROR.
  195. /* Size in UIB: ( 12.86 , 130.00 ) */
  196. /* Links to SmartFrame h_f-bonberech. */
  197. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_f-bonberech ).
  198. /* Adjust the tab order of the smart objects. */
  199. RUN adjust-tab-order IN adm-broker-hdl ( h_f-bonberech ,
  200. CB_Lager:HANDLE , 'AFTER':U ).
  201. END. /* Page 1 */
  202. WHEN 2 THEN DO:
  203. RUN init-object IN THIS-PROCEDURE (
  204. INPUT 'v8/f-bondrucken.w':U ,
  205. INPUT FRAME D-Dialog:HANDLE ,
  206. INPUT 'Layout = ,
  207. Hide-on-Init = no':U ,
  208. OUTPUT h_f-bondrucken ).
  209. RUN set-position IN h_f-bondrucken ( 3.71 , 3.00 ) NO-ERROR.
  210. /* Size in UIB: ( 15.10 , 127.80 ) */
  211. /* Links to SmartFrame h_f-bondrucken. */
  212. RUN add-link IN adm-broker-hdl ( THIS-PROCEDURE , 'MAIN':U , h_f-bondrucken ).
  213. /* Adjust the tab order of the smart objects. */
  214. RUN adjust-tab-order IN adm-broker-hdl ( h_f-bondrucken ,
  215. CB_Lager:HANDLE , 'AFTER':U ).
  216. END. /* Page 2 */
  217. WHEN 3 THEN DO:
  218. RUN init-object IN THIS-PROCEDURE (
  219. INPUT 'v8/f-bonverbuchte.w':U ,
  220. INPUT FRAME D-Dialog:HANDLE ,
  221. INPUT 'Layout = ':U ,
  222. OUTPUT h_f-bonverbuchte ).
  223. RUN set-position IN h_f-bonverbuchte ( 3.62 , 3.60 ) NO-ERROR.
  224. /* Size in UIB: ( 14.91 , 126.40 ) */
  225. /* Links to SmartFrame h_f-bonverbuchte. */
  226. RUN add-link IN adm-broker-hdl ( h_folder , 'MAIN':U , h_f-bonverbuchte ).
  227. /* Adjust the tab order of the smart objects. */
  228. RUN adjust-tab-order IN adm-broker-hdl ( h_f-bonverbuchte ,
  229. CB_Lager:HANDLE , 'AFTER':U ).
  230. END. /* Page 3 */
  231. END CASE.
  232. /* Select a Startup page. */
  233. IF adm-current-page eq 0
  234. THEN RUN select-page IN THIS-PROCEDURE ( 1 ).
  235. END PROCEDURE.
  236. /* _UIB-CODE-BLOCK-END */
  237. &ANALYZE-RESUME
  238. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available D-Dialog _ADM-ROW-AVAILABLE
  239. PROCEDURE adm-row-available :
  240. /*------------------------------------------------------------------------------
  241. Purpose: Dispatched to this procedure when the Record-
  242. Source has a new row available. This procedure
  243. tries to get the new row (or foriegn keys) from
  244. the Record-Source and process it.
  245. Parameters: <none>
  246. ------------------------------------------------------------------------------*/
  247. /* Define variables needed by this internal procedure. */
  248. {src/adm/template/row-head.i}
  249. /* Process the newly available records (i.e. display fields,
  250. open queries, and/or pass records on to any RECORD-TARGETS). */
  251. {src/adm/template/row-end.i}
  252. END PROCEDURE.
  253. /* _UIB-CODE-BLOCK-END */
  254. &ANALYZE-RESUME
  255. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI D-Dialog _DEFAULT-DISABLE
  256. PROCEDURE disable_UI :
  257. /*------------------------------------------------------------------------------
  258. Purpose: DISABLE the User Interface
  259. Parameters: <none>
  260. Notes: Here we clean-up the user-interface by deleting
  261. dynamic widgets we have created and/or hide
  262. frames. This procedure is usually called when
  263. we are ready to "clean-up" after running.
  264. ------------------------------------------------------------------------------*/
  265. /* Hide all frames. */
  266. HIDE FRAME D-Dialog.
  267. END PROCEDURE.
  268. /* _UIB-CODE-BLOCK-END */
  269. &ANALYZE-RESUME
  270. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI D-Dialog _DEFAULT-ENABLE
  271. PROCEDURE enable_UI :
  272. /*------------------------------------------------------------------------------
  273. Purpose: ENABLE the User Interface
  274. Parameters: <none>
  275. Notes: Here we display/view/enable the widgets in the
  276. user-interface. In addition, OPEN all queries
  277. associated with each FRAME and BROWSE.
  278. These statements here are based on the "Other
  279. Settings" section of the widget Property Sheets.
  280. ------------------------------------------------------------------------------*/
  281. DISPLAY CB_Lager
  282. WITH FRAME D-Dialog.
  283. ENABLE CB_Lager
  284. WITH FRAME D-Dialog.
  285. VIEW FRAME D-Dialog.
  286. {&OPEN-BROWSERS-IN-QUERY-D-Dialog}
  287. END PROCEDURE.
  288. /* _UIB-CODE-BLOCK-END */
  289. &ANALYZE-RESUME
  290. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE GETBONUSLAGER D-Dialog
  291. PROCEDURE GETBONUSLAGER :
  292. /*------------------------------------------------------------------------------
  293. Purpose:
  294. Parameters: <none>
  295. Notes:
  296. ------------------------------------------------------------------------------*/
  297. DEF OUTPUT PARAMETER opLager AS INT NO-UNDO.
  298. opLager = iLager.
  299. END PROCEDURE.
  300. /* _UIB-CODE-BLOCK-END */
  301. &ANALYZE-RESUME
  302. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-change-page D-Dialog
  303. PROCEDURE local-change-page :
  304. /*------------------------------------------------------------------------------
  305. Purpose: Override standard ADM method
  306. Notes:
  307. ------------------------------------------------------------------------------*/
  308. /* Code placed here will execute PRIOR to standard behavior. */
  309. /* Dispatch standard ADM method. */
  310. RUN dispatch IN THIS-PROCEDURE ( INPUT 'change-page':U ) .
  311. /* Code placed here will execute AFTER standard behavior. */
  312. END PROCEDURE.
  313. /* _UIB-CODE-BLOCK-END */
  314. &ANALYZE-RESUME
  315. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-initialize D-Dialog
  316. PROCEDURE local-initialize :
  317. /*------------------------------------------------------------------------------
  318. Purpose: Override standard ADM method
  319. Notes:
  320. ------------------------------------------------------------------------------*/
  321. DEF VAR xString AS CHAR NO-UNDO.
  322. RUN select-page(1) NO-ERROR..
  323. DO WITH FRAME {&FRAME-NAME}:
  324. iLager = DYNAMIC-FUNCTION('getBenLager':U) NO-ERROR.
  325. RUN COMBO_LAGER ( CB_Lager:HANDLE ).
  326. IF CB_Lager:NUM-ITEMS > 1 THEN DO:
  327. xString = CB_Lager:LIST-ITEM-PAIRS + ';Alle Lager (999999);999999'.
  328. CB_Lager:LIST-ITEM-PAIRS = xString.
  329. END.
  330. CB_Lager:SCREEN-VALUE = STRING(iLager,'999999').
  331. END.
  332. /* Dispatch standard ADM method. */
  333. RUN dispatch IN THIS-PROCEDURE ( INPUT 'initialize':U ) .
  334. PUBLISH 'BONUSLAGER' ( iLager ).
  335. RETURN NO-APPLY.
  336. /* Code placed here will execute AFTER standard behavior. */
  337. END PROCEDURE.
  338. /* _UIB-CODE-BLOCK-END */
  339. &ANALYZE-RESUME
  340. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records D-Dialog _ADM-SEND-RECORDS
  341. PROCEDURE send-records :
  342. /*------------------------------------------------------------------------------
  343. Purpose: Send record ROWID's for all tables used by
  344. this file.
  345. Parameters: see template/snd-head.i
  346. ------------------------------------------------------------------------------*/
  347. /* SEND-RECORDS does nothing because there are no External
  348. Tables specified for this SmartDialog, and there are no
  349. tables specified in any contained Browse, Query, or Frame. */
  350. END PROCEDURE.
  351. /* _UIB-CODE-BLOCK-END */
  352. &ANALYZE-RESUME
  353. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE state-changed D-Dialog
  354. PROCEDURE state-changed :
  355. /* -----------------------------------------------------------
  356. Purpose:
  357. Parameters: <none>
  358. Notes:
  359. -------------------------------------------------------------*/
  360. DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO.
  361. DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO.
  362. CASE p-state:
  363. WHEN 'ENDE' THEN DO:
  364. RUN WINDOWCLOSE.
  365. RETURN NO-APPLY.
  366. END.
  367. END CASE.
  368. END PROCEDURE.
  369. /* _UIB-CODE-BLOCK-END */
  370. &ANALYZE-RESUME
  371. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE WINDOWCLOSE D-Dialog
  372. PROCEDURE WINDOWCLOSE :
  373. /*------------------------------------------------------------------------------
  374. Purpose:
  375. Parameters: <none>
  376. Notes:
  377. ------------------------------------------------------------------------------*/
  378. DEF VAR iSeite AS INT NO-UNDO.
  379. RUN get-attribute ('current-page':U).
  380. iSeite = INTEGER(RETURN-VALUE) NO-ERROR.
  381. IF iSeite <> 1 THEN DO:
  382. RUN select-page(1).
  383. RUN view-page (1).
  384. RETURN NO-APPLY.
  385. END.
  386. APPLY "GO":U TO THIS-PROCEDURE.
  387. APPLY "CLOSE" TO THIS-PROCEDURE.
  388. RETURN NO-APPLY.
  389. END PROCEDURE.
  390. /* _UIB-CODE-BLOCK-END */
  391. &ANALYZE-RESUME