b-spezrab-deb.w 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546
  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. /* _UIB-CODE-BLOCK-END */
  29. &ANALYZE-RESUME
  30. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  31. /* ******************** Preprocessor Definitions ******************** */
  32. &Scoped-define PROCEDURE-TYPE SmartDataBrowser
  33. &Scoped-define DB-AWARE no
  34. &Scoped-define ADM-SUPPORTED-LINKS TableIO-Target,Data-Target,Update-Source
  35. /* Include file with RowObject temp-table definition */
  36. &Scoped-define DATA-FIELD-DEFS "d-spezrab.i"
  37. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  38. &Scoped-define FRAME-NAME F-Main
  39. &Scoped-define BROWSE-NAME br_table
  40. /* Internal Tables (found by Frame, Query & Browse Queries) */
  41. &Scoped-define INTERNAL-TABLES rowObject
  42. /* Definitions for BROWSE br_table */
  43. &Scoped-define FIELDS-IN-QUERY-br_table rowObject.Rab_Grp rowObject.RabGrp ~
  44. rowObject.Menge rowObject.Ab_Datum rowObject.Bis_Datum rowObject.Proz_Betr ~
  45. rowObject.Wert rowObject.Auf_Proz_Betr rowObject.Auf_Wert
  46. &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table
  47. &Scoped-define QUERY-STRING-br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION
  48. &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION.
  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-3 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-3
  67. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  68. SIZE 110 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. rowObject.Rab_Grp COLUMN-LABEL "RabGrp" FORMAT "999":U WIDTH 8
  82. rowObject.RabGrp FORMAT "x(30)":U
  83. rowObject.Menge COLUMN-LABEL "ab Menge" FORMAT "zzz,zz9":U
  84. rowObject.Ab_Datum COLUMN-LABEL "gültig ab" FORMAT "99.99.9999":U
  85. WIDTH 11
  86. rowObject.Bis_Datum COLUMN-LABEL "gültig bis" FORMAT "99.99.9999":U
  87. WIDTH 11
  88. rowObject.Proz_Betr COLUMN-LABEL "P/B" FORMAT "P/B":U WIDTH 4
  89. rowObject.Wert FORMAT "zz9.9999-":U WIDTH 10
  90. rowObject.Auf_Proz_Betr COLUMN-LABEL "P/B" FORMAT "P/B":U
  91. WIDTH 4
  92. rowObject.Auf_Wert COLUMN-LABEL "Wert" FORMAT "zz9.9999-":U
  93. WIDTH 12
  94. /* _UIB-CODE-BLOCK-END */
  95. &ANALYZE-RESUME
  96. WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 108 BY 6.67
  97. BGCOLOR 15 FIT-LAST-COLUMN.
  98. /* ************************ Frame Definitions *********************** */
  99. DEFINE FRAME F-Main
  100. br_table AT ROW 1.48 COL 3
  101. RECT-3 AT ROW 1.24 COL 2
  102. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  103. SIDE-LABELS NO-UNDERLINE THREE-D
  104. AT COL 1 ROW 1 SCROLLABLE .
  105. /* *********************** Procedure Settings ************************ */
  106. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  107. /* Settings for THIS-PROCEDURE
  108. Type: SmartDataBrowser
  109. Data Source: "d-spezrab.w"
  110. Allow: Basic,Browse
  111. Frames: 1
  112. Add Fields to: Neither
  113. Other Settings: PERSISTENT-ONLY COMPILE
  114. */
  115. /* This procedure should always be RUN PERSISTENT. Report the error, */
  116. /* then cleanup and return. */
  117. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  118. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  119. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  120. RETURN.
  121. END.
  122. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  123. /* ************************* Create Window ************************** */
  124. &ANALYZE-SUSPEND _CREATE-WINDOW
  125. /* DESIGN Window definition (used by the UIB)
  126. CREATE WINDOW bTableWin ASSIGN
  127. HEIGHT = 7.81
  128. WIDTH = 113.8.
  129. /* END WINDOW DEFINITION */
  130. */
  131. &ANALYZE-RESUME
  132. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB bTableWin
  133. /* ************************* Included-Libraries *********************** */
  134. {src/adm2/browser.i}
  135. /* _UIB-CODE-BLOCK-END */
  136. &ANALYZE-RESUME
  137. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  138. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  139. /* SETTINGS FOR WINDOW bTableWin
  140. NOT-VISIBLE,,RUN-PERSISTENT */
  141. /* SETTINGS FOR FRAME F-Main
  142. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  143. /* BROWSE-TAB br_table RECT-3 F-Main */
  144. ASSIGN
  145. FRAME F-Main:SCROLLABLE = FALSE
  146. FRAME F-Main:HIDDEN = TRUE.
  147. /* _RUN-TIME-ATTRIBUTES-END */
  148. &ANALYZE-RESUME
  149. /* Setting information for Queries and Browse Widgets fields */
  150. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE br_table
  151. /* Query rebuild information for BROWSE br_table
  152. _TblList = "rowObject"
  153. _Options = "NO-LOCK INDEXED-REPOSITION"
  154. _FldNameList[1] > _<SDO>.rowObject.Rab_Grp
  155. "rowObject.Rab_Grp" "RabGrp" ? "integer" ? ? ? ? ? ? no "?" no no "8" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  156. _FldNameList[2] > _<SDO>.rowObject.RabGrp
  157. "rowObject.RabGrp" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  158. _FldNameList[3] > _<SDO>.rowObject.Menge
  159. "rowObject.Menge" "ab Menge" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  160. _FldNameList[4] > _<SDO>.rowObject.Ab_Datum
  161. "rowObject.Ab_Datum" "gültig ab" ? "date" ? ? ? ? ? ? no "?" no no "11" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  162. _FldNameList[5] > _<SDO>.rowObject.Bis_Datum
  163. "rowObject.Bis_Datum" "gültig bis" ? "date" ? ? ? ? ? ? no "?" no no "11" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  164. _FldNameList[6] > _<SDO>.rowObject.Proz_Betr
  165. "rowObject.Proz_Betr" "P/B" ? "logical" ? ? ? ? ? ? no "Zeilenrabatt" no no "4" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  166. _FldNameList[7] > _<SDO>.rowObject.Wert
  167. "rowObject.Wert" ? ? "decimal" ? ? ? ? ? ? no "Zeilenrabatt" no no "10" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  168. _FldNameList[8] > _<SDO>.rowObject.Auf_Proz_Betr
  169. "rowObject.Auf_Proz_Betr" "P/B" ? "logical" ? ? ? ? ? ? no "Auftragsrabatt" no no "4" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  170. _FldNameList[9] > _<SDO>.rowObject.Auf_Wert
  171. "rowObject.Auf_Wert" "Wert" ? "decimal" ? ? ? ? ? ? no "Auftragsrabatt" no no "12" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  172. _Query is NOT OPENED
  173. */ /* BROWSE br_table */
  174. &ANALYZE-RESUME
  175. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  176. /* Query rebuild information for FRAME F-Main
  177. _Options = "NO-LOCK"
  178. _Query is NOT OPENED
  179. */ /* FRAME F-Main */
  180. &ANALYZE-RESUME
  181. /* ************************ Control Triggers ************************ */
  182. &Scoped-define BROWSE-NAME br_table
  183. &Scoped-define SELF-NAME br_table
  184. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  185. ON CTRL-END OF br_table IN FRAME F-Main
  186. DO:
  187. APPLY "END":U TO BROWSE br_table.
  188. END.
  189. /* _UIB-CODE-BLOCK-END */
  190. &ANALYZE-RESUME
  191. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  192. ON CTRL-HOME OF br_table IN FRAME F-Main
  193. DO:
  194. APPLY "HOME":U TO BROWSE br_table.
  195. END.
  196. /* _UIB-CODE-BLOCK-END */
  197. &ANALYZE-RESUME
  198. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  199. ON END OF br_table IN FRAME F-Main
  200. DO:
  201. {src/adm2/brsend.i}
  202. END.
  203. /* _UIB-CODE-BLOCK-END */
  204. &ANALYZE-RESUME
  205. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  206. ON HOME OF br_table IN FRAME F-Main
  207. DO:
  208. {src/adm2/brshome.i}
  209. END.
  210. /* _UIB-CODE-BLOCK-END */
  211. &ANALYZE-RESUME
  212. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  213. ON OFF-END OF br_table IN FRAME F-Main
  214. DO:
  215. {src/adm2/brsoffnd.i}
  216. END.
  217. /* _UIB-CODE-BLOCK-END */
  218. &ANALYZE-RESUME
  219. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  220. ON OFF-HOME OF br_table IN FRAME F-Main
  221. DO:
  222. {src/adm2/brsoffhm.i}
  223. END.
  224. /* _UIB-CODE-BLOCK-END */
  225. &ANALYZE-RESUME
  226. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  227. ON PAGE-DOWN OF br_table IN FRAME F-Main
  228. DO:
  229. RETURN.
  230. END.
  231. /* _UIB-CODE-BLOCK-END */
  232. &ANALYZE-RESUME
  233. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  234. ON PAGE-UP OF br_table IN FRAME F-Main
  235. DO:
  236. RETURN.
  237. END.
  238. /* _UIB-CODE-BLOCK-END */
  239. &ANALYZE-RESUME
  240. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  241. ON ROW-ENTRY OF br_table IN FRAME F-Main
  242. DO:
  243. {src/adm2/brsentry.i}
  244. END.
  245. /* _UIB-CODE-BLOCK-END */
  246. &ANALYZE-RESUME
  247. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  248. ON ROW-LEAVE OF br_table IN FRAME F-Main
  249. DO:
  250. {src/adm2/brsleave.i}
  251. END.
  252. /* _UIB-CODE-BLOCK-END */
  253. &ANALYZE-RESUME
  254. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  255. ON SCROLL-NOTIFY OF br_table IN FRAME F-Main
  256. DO:
  257. {src/adm2/brsscrol.i}
  258. END.
  259. /* _UIB-CODE-BLOCK-END */
  260. &ANALYZE-RESUME
  261. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  262. ON START-SEARCH OF br_table IN FRAME F-Main
  263. DO:
  264. { incl/brwstartsearch.i }
  265. END.
  266. /* _UIB-CODE-BLOCK-END */
  267. &ANALYZE-RESUME
  268. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  269. ON VALUE-CHANGED OF br_table IN FRAME F-Main
  270. DO:
  271. {src/adm2/brschnge.i}
  272. END.
  273. /* _UIB-CODE-BLOCK-END */
  274. &ANALYZE-RESUME
  275. &UNDEFINE SELF-NAME
  276. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
  277. /* *************************** Main Block *************************** */
  278. { incl/brwmainblock.i }
  279. { incl/brwinternproc.i }
  280. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  281. RUN initializeObject.
  282. &ENDIF
  283. /* _UIB-CODE-BLOCK-END */
  284. &ANALYZE-RESUME
  285. /* ********************** Internal Procedures *********************** */
  286. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE destroyObject bTableWin
  287. PROCEDURE destroyObject :
  288. /*------------------------------------------------------------------------------
  289. Purpose: Super Override
  290. Parameters:
  291. Notes:
  292. ------------------------------------------------------------------------------*/
  293. DEF VAR hBrowser AS HANDLE NO-UNDO.
  294. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  295. DYNAMIC-FUNCTION('setBrowserDaten':U, INPUT hBrowser,
  296. INPUT Sektion ) NO-ERROR.
  297. RUN SUPER.
  298. /* Code placed here will execute AFTER standard behavior. */
  299. END PROCEDURE.
  300. /* _UIB-CODE-BLOCK-END */
  301. &ANALYZE-RESUME
  302. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _DEFAULT-DISABLE
  303. PROCEDURE disable_UI :
  304. /*------------------------------------------------------------------------------
  305. Purpose: DISABLE the User Interface
  306. Parameters: <none>
  307. Notes: Here we clean-up the user-interface by deleting
  308. dynamic widgets we have created and/or hide
  309. frames. This procedure is usually called when
  310. we are ready to "clean-up" after running.
  311. ------------------------------------------------------------------------------*/
  312. /* Hide all frames. */
  313. HIDE FRAME F-Main.
  314. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  315. END PROCEDURE.
  316. /* _UIB-CODE-BLOCK-END */
  317. &ANALYZE-RESUME
  318. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject bTableWin
  319. PROCEDURE enableObject :
  320. /*------------------------------------------------------------------------------
  321. Purpose: Super Override
  322. Parameters:
  323. Notes:
  324. ------------------------------------------------------------------------------*/
  325. hDaten = DYNAMIC-FUNCTION('getDataSOurce':U) NO-ERROR.
  326. RUN SUPER.
  327. /* Code placed here will execute AFTER standard behavior. */
  328. END PROCEDURE.
  329. /* _UIB-CODE-BLOCK-END */
  330. &ANALYZE-RESUME
  331. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_BROWSE bTableWin
  332. PROCEDURE ENTRY_BROWSE :
  333. /*------------------------------------------------------------------------------
  334. Purpose:
  335. Parameters: <none>
  336. Notes:
  337. ------------------------------------------------------------------------------*/
  338. APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}.
  339. RETURN NO-APPLY.
  340. END PROCEDURE.
  341. /* _UIB-CODE-BLOCK-END */
  342. &ANALYZE-RESUME
  343. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE hideObject bTableWin
  344. PROCEDURE hideObject :
  345. /*------------------------------------------------------------------------------
  346. Purpose: Super Override
  347. Parameters:
  348. Notes:
  349. ------------------------------------------------------------------------------*/
  350. RUN SET_OPENFLAG IN hDaten ( FALSE ) NO-ERROR.
  351. RUN SUPER.
  352. /* Code placed here will execute AFTER standard behavior. */
  353. END PROCEDURE.
  354. /* _UIB-CODE-BLOCK-END */
  355. &ANALYZE-RESUME
  356. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin
  357. PROCEDURE initializeObject :
  358. /*------------------------------------------------------------------------------
  359. Purpose: Super Override
  360. Parameters:
  361. Notes:
  362. ------------------------------------------------------------------------------*/
  363. { incl/brwinitialize.i }
  364. APPLY 'VALUE-CHANGED' TO hItem_sort.
  365. END PROCEDURE.
  366. /* _UIB-CODE-BLOCK-END */
  367. &ANALYZE-RESUME
  368. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE viewObject bTableWin
  369. PROCEDURE viewObject :
  370. /*------------------------------------------------------------------------------
  371. Purpose: Super Override
  372. Parameters:
  373. Notes:
  374. ------------------------------------------------------------------------------*/
  375. RUN SUPER.
  376. IF NOT VALID-HANDLE ( hDaten ) THEN hDaten = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR.
  377. RUN SET_OPENFLAG IN hDaten ( TRUE ) NO-ERROR.
  378. END PROCEDURE.
  379. /* _UIB-CODE-BLOCK-END */
  380. &ANALYZE-RESUME
  381. /* ************************ Function Implementations ***************** */
  382. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setZeilenFarbe bTableWin
  383. FUNCTION setZeilenFarbe RETURNS LOGICAL
  384. ( ipFarbe AS INT ) :
  385. /*------------------------------------------------------------------------------
  386. Purpose:
  387. Notes:
  388. ------------------------------------------------------------------------------*/
  389. { incl/brwsetzeilenfarbe.i }
  390. END FUNCTION.
  391. /* _UIB-CODE-BLOCK-END */
  392. &ANALYZE-RESUME