b-lotlager.w 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535
  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-lotlager.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.Lagerort ~
  45. rowObject.Eingang rowObject.Verfall rowObject.Lotnummer rowObject.Bestand ~
  46. rowObject.LagerPlatzBestand rowObject.Barcode
  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 142 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.Lagerort FORMAT "x(14)":U
  83. rowObject.Eingang FORMAT "99.99.9999":U WIDTH 14
  84. rowObject.Verfall COLUMN-LABEL "Verfall (MHD)" FORMAT "99.99.9999":U
  85. WIDTH 14
  86. rowObject.Lotnummer COLUMN-LABEL "Lot / Charge" FORMAT "x(20)":U
  87. rowObject.Bestand FORMAT "->,>>>,>>9":U
  88. rowObject.LagerPlatzBestand FORMAT "->,>>>,>>9":U
  89. rowObject.Barcode FORMAT "x(60)":U WIDTH 40
  90. /* _UIB-CODE-BLOCK-END */
  91. &ANALYZE-RESUME
  92. WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 140 BY 6.67.
  93. /* ************************ Frame Definitions *********************** */
  94. DEFINE FRAME F-Main
  95. br_table AT ROW 1.48 COL 3 WIDGET-ID 200
  96. RECT-1 AT ROW 1.24 COL 2 WIDGET-ID 2
  97. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  98. SIDE-LABELS NO-UNDERLINE THREE-D
  99. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  100. /* *********************** Procedure Settings ************************ */
  101. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  102. /* Settings for THIS-PROCEDURE
  103. Type: SmartDataBrowser
  104. Data Source: "d-lotlager.w"
  105. Allow: Basic,Browse
  106. Frames: 1
  107. Add Fields to: Neither
  108. Other Settings: PERSISTENT-ONLY COMPILE
  109. */
  110. /* This procedure should always be RUN PERSISTENT. Report the error, */
  111. /* then cleanup and return. */
  112. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  113. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  114. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  115. RETURN.
  116. END.
  117. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  118. /* ************************* Create Window ************************** */
  119. &ANALYZE-SUSPEND _CREATE-WINDOW
  120. /* DESIGN Window definition (used by the UIB)
  121. CREATE WINDOW bTableWin ASSIGN
  122. HEIGHT = 7.62
  123. WIDTH = 144.
  124. /* END WINDOW DEFINITION */
  125. */
  126. &ANALYZE-RESUME
  127. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB bTableWin
  128. /* ************************* Included-Libraries *********************** */
  129. {src/adm2/browser.i}
  130. /* _UIB-CODE-BLOCK-END */
  131. &ANALYZE-RESUME
  132. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  133. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  134. /* SETTINGS FOR WINDOW bTableWin
  135. NOT-VISIBLE,,RUN-PERSISTENT */
  136. /* SETTINGS FOR FRAME F-Main
  137. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  138. /* BROWSE-TAB br_table RECT-1 F-Main */
  139. ASSIGN
  140. FRAME F-Main:SCROLLABLE = FALSE
  141. FRAME F-Main:HIDDEN = TRUE.
  142. /* _RUN-TIME-ATTRIBUTES-END */
  143. &ANALYZE-RESUME
  144. /* Setting information for Queries and Browse Widgets fields */
  145. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE br_table
  146. /* Query rebuild information for BROWSE br_table
  147. _TblList = "rowObject"
  148. _Options = "NO-LOCK INDEXED-REPOSITION"
  149. _FldNameList[1] > _<SDO>.rowObject.Lagerort
  150. "rowObject.Lagerort" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  151. _FldNameList[2] > _<SDO>.rowObject.Eingang
  152. "rowObject.Eingang" ? ? "date" ? ? ? ? ? ? no "?" no no "14" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  153. _FldNameList[3] > _<SDO>.rowObject.Verfall
  154. "rowObject.Verfall" "Verfall (MHD)" ? "date" ? ? ? ? ? ? no "?" no no "14" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  155. _FldNameList[4] > _<SDO>.rowObject.Lotnummer
  156. "rowObject.Lotnummer" "Lot / Charge" ? "character" ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  157. _FldNameList[5] > _<SDO>.rowObject.Bestand
  158. "rowObject.Bestand" ? "->,>>>,>>9" "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  159. _FldNameList[6] > _<SDO>.rowObject.LagerPlatzBestand
  160. "rowObject.LagerPlatzBestand" ? ? "integer" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  161. _FldNameList[7] > _<SDO>.rowObject.Barcode
  162. "rowObject.Barcode" ? ? "character" ? ? ? ? ? ? no ? no no "40" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  163. _Query is NOT OPENED
  164. */ /* BROWSE br_table */
  165. &ANALYZE-RESUME
  166. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  167. /* Query rebuild information for FRAME F-Main
  168. _Options = "NO-LOCK"
  169. _Query is NOT OPENED
  170. */ /* FRAME F-Main */
  171. &ANALYZE-RESUME
  172. /* ************************ Control Triggers ************************ */
  173. &Scoped-define BROWSE-NAME br_table
  174. &Scoped-define SELF-NAME br_table
  175. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  176. ON CTRL-END OF br_table IN FRAME F-Main
  177. DO:
  178. APPLY "END":U TO BROWSE {&BROWSE-NAME}.
  179. END.
  180. /* _UIB-CODE-BLOCK-END */
  181. &ANALYZE-RESUME
  182. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  183. ON CTRL-HOME OF br_table IN FRAME F-Main
  184. DO:
  185. APPLY "HOME":U TO BROWSE {&BROWSE-NAME}.
  186. END.
  187. /* _UIB-CODE-BLOCK-END */
  188. &ANALYZE-RESUME
  189. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  190. ON DEFAULT-ACTION OF br_table IN FRAME F-Main
  191. DO:
  192. {src/adm2/brsdefault.i}
  193. END.
  194. /* _UIB-CODE-BLOCK-END */
  195. &ANALYZE-RESUME
  196. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  197. ON END OF br_table IN FRAME F-Main
  198. DO:
  199. {src/adm2/brsend.i}
  200. END.
  201. /* _UIB-CODE-BLOCK-END */
  202. &ANALYZE-RESUME
  203. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  204. ON F5 OF br_table IN FRAME F-Main
  205. DO:
  206. DEFINE VARIABLE lMutFlag AS LOGICAL NO-UNDO.
  207. lMutFlag = DYNAMIC-FUNCTION('getMutflag':U, INPUT Progname).
  208. IF lMutFlag THEN RETURN NO-APPLY.
  209. RUN REFRESHLAGER IN hDaten.
  210. RETURN NO-APPLY.
  211. END.
  212. /* _UIB-CODE-BLOCK-END */
  213. &ANALYZE-RESUME
  214. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  215. ON HOME OF br_table IN FRAME F-Main
  216. DO:
  217. {src/adm2/brshome.i}
  218. END.
  219. /* _UIB-CODE-BLOCK-END */
  220. &ANALYZE-RESUME
  221. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  222. ON LEFT-MOUSE-CLICK OF br_table IN FRAME F-Main
  223. DO:
  224. APPLY 'ENTRY' TO {&BROWSE-NAME}.
  225. END.
  226. /* _UIB-CODE-BLOCK-END */
  227. &ANALYZE-RESUME
  228. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  229. ON LEFT-MOUSE-DBLCLICK OF br_table IN FRAME F-Main
  230. DO:
  231. IF NOT VALID-HANDLE( hFenster ) THEN RETURN NO-APPLY.
  232. RUN TOOLBAR IN hFenster ( INPUT 'UPDATE' ).
  233. RETURN NO-APPLY.
  234. END.
  235. /* _UIB-CODE-BLOCK-END */
  236. &ANALYZE-RESUME
  237. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  238. ON OFF-END OF br_table IN FRAME F-Main
  239. DO:
  240. {src/adm2/brsoffnd.i}
  241. END.
  242. /* _UIB-CODE-BLOCK-END */
  243. &ANALYZE-RESUME
  244. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  245. ON OFF-HOME OF br_table IN FRAME F-Main
  246. DO:
  247. {src/adm2/brsoffhm.i}
  248. END.
  249. /* _UIB-CODE-BLOCK-END */
  250. &ANALYZE-RESUME
  251. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  252. ON ROW-ENTRY OF br_table IN FRAME F-Main
  253. DO:
  254. {src/adm2/brsentry.i}
  255. END.
  256. /* _UIB-CODE-BLOCK-END */
  257. &ANALYZE-RESUME
  258. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  259. ON ROW-LEAVE OF br_table IN FRAME F-Main
  260. DO:
  261. {src/adm2/brsleave.i}
  262. END.
  263. /* _UIB-CODE-BLOCK-END */
  264. &ANALYZE-RESUME
  265. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  266. ON SCROLL-NOTIFY OF br_table IN FRAME F-Main
  267. DO:
  268. {src/adm2/brsscrol.i}
  269. END.
  270. /* _UIB-CODE-BLOCK-END */
  271. &ANALYZE-RESUME
  272. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  273. ON START-SEARCH OF br_table IN FRAME F-Main
  274. DO:
  275. { incl/brwstartsearch.i }
  276. END.
  277. /* _UIB-CODE-BLOCK-END */
  278. &ANALYZE-RESUME
  279. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  280. ON VALUE-CHANGED OF br_table IN FRAME F-Main
  281. DO:
  282. {src/adm2/brschnge.i}
  283. END.
  284. /* _UIB-CODE-BLOCK-END */
  285. &ANALYZE-RESUME
  286. &UNDEFINE SELF-NAME
  287. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
  288. /* *************************** Main Block *************************** */
  289. { incl/brwmainblock.i }
  290. { incl/brwinternproc.i }
  291. SUBSCRIBE TO 'REFRESH_LOTLAGER' ANYWHERE.
  292. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  293. RUN initializeObject.
  294. &ENDIF
  295. /* _UIB-CODE-BLOCK-END */
  296. &ANALYZE-RESUME
  297. /* ********************** Internal Procedures *********************** */
  298. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE destroyObject bTableWin
  299. PROCEDURE destroyObject :
  300. /*------------------------------------------------------------------------------
  301. Purpose: Super Override
  302. Parameters:
  303. Notes:
  304. ------------------------------------------------------------------------------*/
  305. DEF VAR hBrowser AS HANDLE NO-UNDO.
  306. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  307. DYNAMIC-FUNCTION('setBrowserDaten':U, INPUT hBrowser,
  308. INPUT Sektion ) NO-ERROR.
  309. RUN SUPER.
  310. /* Code placed here will execute AFTER standard behavior. */
  311. END PROCEDURE.
  312. /* _UIB-CODE-BLOCK-END */
  313. &ANALYZE-RESUME
  314. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _DEFAULT-DISABLE
  315. PROCEDURE disable_UI :
  316. /*------------------------------------------------------------------------------
  317. Purpose: DISABLE the User Interface
  318. Parameters: <none>
  319. Notes: Here we clean-up the user-interface by deleting
  320. dynamic widgets we have created and/or hide
  321. frames. This procedure is usually called when
  322. we are ready to "clean-up" after running.
  323. ------------------------------------------------------------------------------*/
  324. /* Hide all frames. */
  325. HIDE FRAME F-Main.
  326. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  327. END PROCEDURE.
  328. /* _UIB-CODE-BLOCK-END */
  329. &ANALYZE-RESUME
  330. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_BROWSE bTableWin
  331. PROCEDURE ENTRY_BROWSE :
  332. /*------------------------------------------------------------------------------
  333. Purpose:
  334. Parameters: <none>
  335. Notes:
  336. ------------------------------------------------------------------------------*/
  337. APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}.
  338. RETURN NO-APPLY.
  339. END PROCEDURE.
  340. /* _UIB-CODE-BLOCK-END */
  341. &ANALYZE-RESUME
  342. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin
  343. PROCEDURE initializeObject :
  344. /*------------------------------------------------------------------------------
  345. Purpose: Super Override
  346. Parameters:
  347. Notes:
  348. ------------------------------------------------------------------------------*/
  349. { incl/brwinitialize.i }
  350. END PROCEDURE.
  351. /* _UIB-CODE-BLOCK-END */
  352. &ANALYZE-RESUME
  353. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REFRESH_LOTLAGER bTableWin
  354. PROCEDURE REFRESH_LOTLAGER :
  355. /*------------------------------------------------------------------------------
  356. Purpose:
  357. Notes:
  358. ------------------------------------------------------------------------------*/
  359. /* DEFINE VARIABLE rLotLager AS RECID NO-UNDO. */
  360. /* */
  361. /* DEFINE BUFFER bLotLager FOR LotLager. */
  362. /* */
  363. /* rLotLager = DYNAMIC-FUNCTION ('getCurrentRecid':U) NO-ERROR. */
  364. /* IF rLotLager = ? OR */
  365. /* rLotLager = 0 THEN RETURN NO-APPLY. */
  366. /* DYNAMIC-FUNCTION ('openQuery':U) NO-ERROR. */
  367. /* */
  368. /* FIND bLotLager NO-LOCK WHERE RECID(bLotLager) = rLotLager. */
  369. /* DYNAMIC-FUNCTION ('fetchRowIdent':U, STRING(ROWID(bLotLager)), ?) NO-ERROR.*/
  370. /* RELEASE bLotLager. */
  371. END PROCEDURE.
  372. /* _UIB-CODE-BLOCK-END */
  373. &ANALYZE-RESUME
  374. /* ************************ Function Implementations ***************** */
  375. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setZeilenfarbe bTableWin
  376. FUNCTION setZeilenfarbe RETURNS LOGICAL
  377. ( ipFarbe AS INT ) :
  378. /*------------------------------------------------------------------------------
  379. Purpose:
  380. Notes:
  381. ------------------------------------------------------------------------------*/
  382. { incl/brwsetzeilenfarbe.i }
  383. END FUNCTION.
  384. /* _UIB-CODE-BLOCK-END */
  385. &ANALYZE-RESUME