b-kubes.w 14 KB

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