b-shopfeld.w 13 KB

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