b-artums-kum.w 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. anadat PROGRESS
  5. */
  6. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  7. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS bTableWin
  8. /*------------------------------------------------------------------------
  9. File: adm2\src\browser.w
  10. Description: SmartDataBrowser Object
  11. Input Parameters:
  12. <none>
  13. Output Parameters:
  14. <none>
  15. ------------------------------------------------------------------------*/
  16. /* This .W file was created with the Progress AppBuilder. */
  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. { incl/tmpbrowser.i }
  28. {src/adm2/widgetprto.i}
  29. /* _UIB-CODE-BLOCK-END */
  30. &ANALYZE-RESUME
  31. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  32. /* ******************** Preprocessor Definitions ******************** */
  33. &Scoped-define PROCEDURE-TYPE SmartDataBrowser
  34. &Scoped-define DB-AWARE no
  35. &Scoped-define ADM-SUPPORTED-LINKS TableIO-Target,Data-Target,Update-Source
  36. /* Include file with RowObject temp-table definition */
  37. &Scoped-define DATA-FIELD-DEFS "d-artums.i"
  38. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  39. &Scoped-define FRAME-NAME F-Main
  40. &Scoped-define BROWSE-NAME br_table
  41. /* Internal Tables (found by Frame, Query & Browse Queries) */
  42. &Scoped-define INTERNAL-TABLES rowObject
  43. /* Definitions for BROWSE br_table */
  44. &Scoped-define FIELDS-IN-QUERY-br_table Jahr Me_Kum Li_Kum Ep_Kum Vp_Kum ~
  45. Marge
  46. &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table
  47. &Scoped-define QUERY-STRING-br_table FOR EACH rowObject
  48. &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH rowObject.
  49. &Scoped-define TABLES-IN-QUERY-br_table rowObject
  50. &Scoped-define FIRST-TABLE-IN-QUERY-br_table rowObject
  51. /* Definitions for FRAME F-Main */
  52. /* Standard List Definitions */
  53. &Scoped-Define ENABLED-OBJECTS RECT-1 br_table
  54. /* Custom List Definitions */
  55. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  56. /* _UIB-PREPROCESSOR-BLOCK-END */
  57. &ANALYZE-RESUME
  58. /* ************************ Function Prototypes ********************** */
  59. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD setZeilenfarbe bTableWin
  60. FUNCTION setZeilenfarbe RETURNS LOGICAL
  61. ( ipFarbe AS INT ) FORWARD.
  62. /* _UIB-CODE-BLOCK-END */
  63. &ANALYZE-RESUME
  64. /* *********************** Control Definitions ********************** */
  65. /* Definitions of the field level widgets */
  66. DEFINE RECTANGLE RECT-1
  67. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  68. SIZE 94 BY 7.14.
  69. /* Query definitions */
  70. &ANALYZE-SUSPEND
  71. DEFINE TEMP-TABLE RowObject NO-UNDO
  72. {{&DATA-FIELD-DEFS}}
  73. {src/adm2/robjflds.i}.
  74. DEFINE QUERY br_table FOR
  75. rowObject SCROLLING.
  76. &ANALYZE-RESUME
  77. /* Browse definitions */
  78. DEFINE BROWSE br_table
  79. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS br_table bTableWin _STRUCTURED
  80. QUERY br_table NO-LOCK DISPLAY
  81. Jahr FORMAT "9999":U WIDTH 5
  82. Me_Kum COLUMN-LABEL "Menge" FORMAT "zzz,zzz,zz9.99-":U
  83. Li_Kum COLUMN-LABEL "Liter" FORMAT "zzz,zzz,zz9.99-":U
  84. Ep_Kum COLUMN-LABEL "EP" FORMAT "zzz,zzz,zz9.99-":U
  85. Vp_Kum COLUMN-LABEL "VP" FORMAT "zzz,zzz,zz9.99-":U
  86. Marge FORMAT "zzz,zz9.99-%":U
  87. /* _UIB-CODE-BLOCK-END */
  88. &ANALYZE-RESUME
  89. WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 92 BY 6.67.
  90. /* ************************ Frame Definitions *********************** */
  91. DEFINE FRAME F-Main
  92. br_table AT ROW 1.48 COL 3 WIDGET-ID 200
  93. RECT-1 AT ROW 1.24 COL 2 WIDGET-ID 2
  94. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  95. SIDE-LABELS NO-UNDERLINE THREE-D
  96. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  97. /* *********************** Procedure Settings ************************ */
  98. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  99. /* Settings for THIS-PROCEDURE
  100. Type: SmartDataBrowser
  101. Data Source: "d-artums.w"
  102. Allow: Basic,Browse
  103. Frames: 1
  104. Add Fields to: Neither
  105. Other Settings: PERSISTENT-ONLY COMPILE
  106. */
  107. /* This procedure should always be RUN PERSISTENT. Report the error, */
  108. /* then cleanup and return. */
  109. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  110. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  111. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  112. RETURN.
  113. END.
  114. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  115. /* ************************* Create Window ************************** */
  116. &ANALYZE-SUSPEND _CREATE-WINDOW
  117. /* DESIGN Window definition (used by the UIB)
  118. CREATE WINDOW bTableWin ASSIGN
  119. HEIGHT = 7.62
  120. WIDTH = 96.
  121. /* END WINDOW DEFINITION */
  122. */
  123. &ANALYZE-RESUME
  124. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB bTableWin
  125. /* ************************* Included-Libraries *********************** */
  126. {src/adm2/browser.i}
  127. /* _UIB-CODE-BLOCK-END */
  128. &ANALYZE-RESUME
  129. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  130. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  131. /* SETTINGS FOR WINDOW bTableWin
  132. NOT-VISIBLE,,RUN-PERSISTENT */
  133. /* SETTINGS FOR FRAME F-Main
  134. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  135. /* BROWSE-TAB br_table RECT-1 F-Main */
  136. ASSIGN
  137. FRAME F-Main:SCROLLABLE = FALSE
  138. FRAME F-Main:HIDDEN = TRUE.
  139. /* _RUN-TIME-ATTRIBUTES-END */
  140. &ANALYZE-RESUME
  141. /* Setting information for Queries and Browse Widgets fields */
  142. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE br_table
  143. /* Query rebuild information for BROWSE br_table
  144. _TblList = "rowObject"
  145. _Options = "NO-LOCK INDEXED-REPOSITION"
  146. _FldNameList[1] > _<SDO>.rowObject.Jahr
  147. "Jahr" ? ? "integer" ? ? ? ? ? ? no "?" no no "5" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  148. _FldNameList[2] > _<SDO>.rowObject.Me_Kum
  149. "Me_Kum" "Menge" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  150. _FldNameList[3] > _<SDO>.rowObject.Li_Kum
  151. "Li_Kum" "Liter" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  152. _FldNameList[4] > _<SDO>.rowObject.Ep_Kum
  153. "Ep_Kum" "EP" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  154. _FldNameList[5] > _<SDO>.rowObject.Vp_Kum
  155. "Vp_Kum" "VP" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  156. _FldNameList[6] = _<SDO>.rowObject.Marge
  157. _Query is NOT OPENED
  158. */ /* BROWSE br_table */
  159. &ANALYZE-RESUME
  160. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  161. /* Query rebuild information for FRAME F-Main
  162. _Options = "NO-LOCK"
  163. _Query is NOT OPENED
  164. */ /* FRAME F-Main */
  165. &ANALYZE-RESUME
  166. /* ************************ Control Triggers ************************ */
  167. &Scoped-define BROWSE-NAME br_table
  168. &Scoped-define SELF-NAME br_table
  169. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  170. ON CTRL-END OF br_table IN FRAME F-Main
  171. DO:
  172. APPLY "END":U TO BROWSE {&BROWSE-NAME}.
  173. END.
  174. /* _UIB-CODE-BLOCK-END */
  175. &ANALYZE-RESUME
  176. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  177. ON CTRL-HOME OF br_table IN FRAME F-Main
  178. DO:
  179. APPLY "HOME":U TO BROWSE {&BROWSE-NAME}.
  180. END.
  181. /* _UIB-CODE-BLOCK-END */
  182. &ANALYZE-RESUME
  183. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  184. ON DEFAULT-ACTION OF br_table IN FRAME F-Main
  185. DO:
  186. {src/adm2/brsdefault.i}
  187. END.
  188. /* _UIB-CODE-BLOCK-END */
  189. &ANALYZE-RESUME
  190. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  191. ON END OF br_table IN FRAME F-Main
  192. DO:
  193. {src/adm2/brsend.i}
  194. END.
  195. /* _UIB-CODE-BLOCK-END */
  196. &ANALYZE-RESUME
  197. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  198. ON HOME OF br_table IN FRAME F-Main
  199. DO:
  200. {src/adm2/brshome.i}
  201. END.
  202. /* _UIB-CODE-BLOCK-END */
  203. &ANALYZE-RESUME
  204. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  205. ON LEFT-MOUSE-CLICK OF br_table IN FRAME F-Main
  206. DO:
  207. APPLY 'ENTRY' TO {&BROWSE-NAME}.
  208. END.
  209. /* _UIB-CODE-BLOCK-END */
  210. &ANALYZE-RESUME
  211. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  212. ON LEFT-MOUSE-DBLCLICK OF br_table IN FRAME F-Main
  213. DO:
  214. IF NOT VALID-HANDLE( hFenster ) THEN RETURN NO-APPLY.
  215. RUN TOOLBAR IN hFenster ( INPUT 'UPDATE' ).
  216. RETURN NO-APPLY.
  217. END.
  218. /* _UIB-CODE-BLOCK-END */
  219. &ANALYZE-RESUME
  220. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  221. ON OFF-END OF br_table IN FRAME F-Main
  222. DO:
  223. {src/adm2/brsoffnd.i}
  224. END.
  225. /* _UIB-CODE-BLOCK-END */
  226. &ANALYZE-RESUME
  227. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  228. ON OFF-HOME OF br_table IN FRAME F-Main
  229. DO:
  230. {src/adm2/brsoffhm.i}
  231. END.
  232. /* _UIB-CODE-BLOCK-END */
  233. &ANALYZE-RESUME
  234. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  235. ON ROW-ENTRY OF br_table IN FRAME F-Main
  236. DO:
  237. {src/adm2/brsentry.i}
  238. END.
  239. /* _UIB-CODE-BLOCK-END */
  240. &ANALYZE-RESUME
  241. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  242. ON ROW-LEAVE OF br_table IN FRAME F-Main
  243. DO:
  244. {src/adm2/brsleave.i}
  245. END.
  246. /* _UIB-CODE-BLOCK-END */
  247. &ANALYZE-RESUME
  248. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  249. ON SCROLL-NOTIFY OF br_table IN FRAME F-Main
  250. DO:
  251. {src/adm2/brsscrol.i}
  252. END.
  253. /* _UIB-CODE-BLOCK-END */
  254. &ANALYZE-RESUME
  255. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  256. ON START-SEARCH OF br_table IN FRAME F-Main
  257. DO:
  258. { incl/brwstartsearch.i }
  259. END.
  260. /* _UIB-CODE-BLOCK-END */
  261. &ANALYZE-RESUME
  262. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  263. ON VALUE-CHANGED OF br_table IN FRAME F-Main
  264. DO:
  265. {src/adm2/brschnge.i}
  266. END.
  267. /* _UIB-CODE-BLOCK-END */
  268. &ANALYZE-RESUME
  269. &UNDEFINE SELF-NAME
  270. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
  271. /* *************************** Main Block *************************** */
  272. { incl/brwmainblock.i }
  273. { incl/brwinternproc.i }
  274. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  275. RUN initializeObject.
  276. &ENDIF
  277. /* _UIB-CODE-BLOCK-END */
  278. &ANALYZE-RESUME
  279. /* ********************** Internal Procedures *********************** */
  280. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE destroyObject bTableWin
  281. PROCEDURE destroyObject :
  282. /*------------------------------------------------------------------------------
  283. Purpose: Super Override
  284. Parameters:
  285. Notes:
  286. ------------------------------------------------------------------------------*/
  287. DEF VAR hBrowser AS HANDLE NO-UNDO.
  288. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  289. DYNAMIC-FUNCTION('setBrowserDaten':U, INPUT hBrowser,
  290. INPUT Sektion ) NO-ERROR.
  291. RUN SUPER.
  292. /* Code placed here will execute AFTER standard behavior. */
  293. END PROCEDURE.
  294. /* _UIB-CODE-BLOCK-END */
  295. &ANALYZE-RESUME
  296. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _DEFAULT-DISABLE
  297. PROCEDURE disable_UI :
  298. /*------------------------------------------------------------------------------
  299. Purpose: DISABLE the User Interface
  300. Parameters: <none>
  301. Notes: Here we clean-up the user-interface by deleting
  302. dynamic widgets we have created and/or hide
  303. frames. This procedure is usually called when
  304. we are ready to "clean-up" after running.
  305. ------------------------------------------------------------------------------*/
  306. /* Hide all frames. */
  307. HIDE FRAME F-Main.
  308. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  309. END PROCEDURE.
  310. /* _UIB-CODE-BLOCK-END */
  311. &ANALYZE-RESUME
  312. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_BROWSE bTableWin
  313. PROCEDURE ENTRY_BROWSE :
  314. /*------------------------------------------------------------------------------
  315. Purpose:
  316. Parameters: <none>
  317. Notes:
  318. ------------------------------------------------------------------------------*/
  319. APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}.
  320. RETURN NO-APPLY.
  321. END PROCEDURE.
  322. /* _UIB-CODE-BLOCK-END */
  323. &ANALYZE-RESUME
  324. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin
  325. PROCEDURE initializeObject :
  326. /*------------------------------------------------------------------------------
  327. Purpose: Super Override
  328. Parameters:
  329. Notes:
  330. ------------------------------------------------------------------------------*/
  331. { incl/brwinitialize.i }
  332. END PROCEDURE.
  333. /* _UIB-CODE-BLOCK-END */
  334. &ANALYZE-RESUME
  335. /* ************************ Function Implementations ***************** */
  336. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setZeilenfarbe bTableWin
  337. FUNCTION setZeilenfarbe RETURNS LOGICAL
  338. ( ipFarbe AS INT ) :
  339. /*------------------------------------------------------------------------------
  340. Purpose:
  341. Notes:
  342. ------------------------------------------------------------------------------*/
  343. { incl/brwsetzeilenfarbe.i }
  344. END FUNCTION.
  345. /* _UIB-CODE-BLOCK-END */
  346. &ANALYZE-RESUME