d-kubessta.w 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543
  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. {adecomm/appserv.i}
  8. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS dTables
  9. /*------------------------------------------------------------------------
  10. File:
  11. Description: from DATA.W - Template For SmartData objects in the ADM
  12. Input Parameters:
  13. <none>
  14. Output Parameters:
  15. <none>
  16. Modified: February 24, 1999
  17. ------------------------------------------------------------------------*/
  18. /* This .W file was created with the Progress AppBuilder. */
  19. /*----------------------------------------------------------------------*/
  20. /* Create an unnamed pool to store all the widgets created
  21. by this procedure. This is a good default which assures
  22. that this procedure's triggers and internal procedures
  23. will execute in this procedure's storage, and that proper
  24. cleanup will occur on deletion of the procedure. */
  25. CREATE WIDGET-POOL.
  26. /* *************************** Definitions ************************** */
  27. /* Parameters Definitions --- */
  28. /* Local Variable Definitions --- */
  29. &SCOPED-DEFINE Tabelle Benutzer
  30. &SCOPED-DEFINE TabWhere /* USE-INDEX Benutzer-k1 ~
  31. WHERE {&Tabelle}.Benutzer = tRowObject.Benutzer
  32. */
  33. { incl/datdefinition.i }
  34. /* _UIB-CODE-BLOCK-END */
  35. &ANALYZE-RESUME
  36. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  37. /* ******************** Preprocessor Definitions ******************** */
  38. &Global-define DATA-LOGIC-PROCEDURE .p
  39. &Scoped-define PROCEDURE-TYPE SmartDataObject
  40. &Scoped-define DB-AWARE yes
  41. &Scoped-define ADM-SUPPORTED-LINKS Data-Source,Data-Target,Navigation-Target,Update-Target,Commit-Target,Filter-Target
  42. /* Db-Required definitions. */
  43. &IF DEFINED(DB-REQUIRED) = 0 &THEN
  44. &GLOBAL-DEFINE DB-REQUIRED TRUE
  45. &ENDIF
  46. &GLOBAL-DEFINE DB-REQUIRED-START &IF {&DB-REQUIRED} &THEN
  47. &GLOBAL-DEFINE DB-REQUIRED-END &ENDIF
  48. &Scoped-define QUERY-NAME Query-Main
  49. /* Internal Tables (found by Frame, Query & Browse Queries) */
  50. &Scoped-define INTERNAL-TABLES KuBesSta
  51. /* Definitions for QUERY Query-Main */
  52. &Scoped-Define ENABLED-FIELDS Firma Knr LetztBesuch AnzSoll AnzHaben FremdLief1 FremdLief2 FremdLief3~
  53. FremdLief4 FremdLief5 FremdWgr1 FremdWgr2 FremdWgr3 FremdWgr4 FremdWgr5
  54. &Scoped-define ENABLED-FIELDS-IN-KuBesSta Firma Knr LetztBesuch AnzSoll ~
  55. AnzHaben FremdLief1 FremdLief2 FremdLief3 FremdLief4 FremdLief5 FremdWgr1 ~
  56. FremdWgr2 FremdWgr3 FremdWgr4 FremdWgr5
  57. &Scoped-Define DATA-FIELDS Firma Knr LetztBesuch AnzSoll AnzHaben FremdLief1 FremdLief2 FremdLief3~
  58. FremdLief4 FremdLief5 FremdWgr1 FremdWgr2 FremdWgr3 FremdWgr4 FremdWgr5
  59. &Scoped-define DATA-FIELDS-IN-KuBesSta Firma Knr LetztBesuch AnzSoll ~
  60. AnzHaben FremdLief1 FremdLief2 FremdLief3 FremdLief4 FremdLief5 FremdWgr1 ~
  61. FremdWgr2 FremdWgr3 FremdWgr4 FremdWgr5
  62. &Scoped-Define MANDATORY-FIELDS
  63. &Scoped-Define APPLICATION-SERVICE
  64. &Scoped-Define ASSIGN-LIST
  65. &Scoped-Define DATA-FIELD-DEFS "d-kubessta.i"
  66. &Scoped-Define DATA-TABLE-NO-UNDO NO-UNDO
  67. &Scoped-define QUERY-STRING-Query-Main FOR EACH KuBesSta NO-LOCK INDEXED-REPOSITION
  68. {&DB-REQUIRED-START}
  69. &Scoped-define OPEN-QUERY-Query-Main OPEN QUERY Query-Main FOR EACH KuBesSta NO-LOCK INDEXED-REPOSITION.
  70. {&DB-REQUIRED-END}
  71. &Scoped-define TABLES-IN-QUERY-Query-Main KuBesSta
  72. &Scoped-define FIRST-TABLE-IN-QUERY-Query-Main KuBesSta
  73. /* Custom List Definitions */
  74. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  75. /* _UIB-PREPROCESSOR-BLOCK-END */
  76. &ANALYZE-RESUME
  77. /* ************************ Function Prototypes ********************** */
  78. {&DB-REQUIRED-START}
  79. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getQueryBuffer dTables _DB-REQUIRED
  80. FUNCTION getQueryBuffer RETURNS HANDLE
  81. ( /* parameter-definitions */ ) FORWARD.
  82. /* _UIB-CODE-BLOCK-END */
  83. &ANALYZE-RESUME
  84. {&DB-REQUIRED-END}
  85. {&DB-REQUIRED-START}
  86. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD openQuery dTables _DB-REQUIRED
  87. FUNCTION openQuery RETURNS LOGICAL
  88. ( /* parameter-definitions */ ) FORWARD.
  89. /* _UIB-CODE-BLOCK-END */
  90. &ANALYZE-RESUME
  91. {&DB-REQUIRED-END}
  92. /* *********************** Control Definitions ********************** */
  93. {&DB-REQUIRED-START}
  94. /* Query definitions */
  95. &ANALYZE-SUSPEND
  96. DEFINE QUERY Query-Main FOR
  97. KuBesSta SCROLLING.
  98. &ANALYZE-RESUME
  99. {&DB-REQUIRED-END}
  100. /* ************************ Frame Definitions *********************** */
  101. /* *********************** Procedure Settings ************************ */
  102. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  103. /* Settings for THIS-PROCEDURE
  104. Type: SmartDataObject
  105. Allow: Query
  106. Frames: 0
  107. Add Fields to: Neither
  108. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER DB-AWARE
  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 dTables ASSIGN
  122. HEIGHT = 1.62
  123. WIDTH = 62.
  124. /* END WINDOW DEFINITION */
  125. */
  126. &ANALYZE-RESUME
  127. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB dTables
  128. /* ************************* Included-Libraries *********************** */
  129. {src/adm2/data.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 dTables
  135. VISIBLE,,RUN-PERSISTENT */
  136. /* _RUN-TIME-ATTRIBUTES-END */
  137. &ANALYZE-RESUME
  138. /* Setting information for Queries and Browse Widgets fields */
  139. &ANALYZE-SUSPEND _QUERY-BLOCK QUERY Query-Main
  140. /* Query rebuild information for SmartDataObject Query-Main
  141. _TblList = "AnaDat.KuBesSta"
  142. _Options = "NO-LOCK INDEXED-REPOSITION"
  143. _FldNameList[1] > AnaDat.KuBesSta.Firma
  144. "Firma" "Firma" ? ? "character" ? ? ? ? ? ? yes ? no 8 yes ?
  145. _FldNameList[2] > AnaDat.KuBesSta.Knr
  146. "Knr" "Knr" ? ? "integer" ? ? ? ? ? ? yes ? no 7.2 yes ?
  147. _FldNameList[3] > AnaDat.KuBesSta.LetztBesuch
  148. "LetztBesuch" "LetztBesuch" ? ? "date" ? ? ? ? ? ? yes ? no 11.8 yes ?
  149. _FldNameList[4] > AnaDat.KuBesSta.AnzSoll
  150. "AnzSoll" "AnzSoll" ? ? "integer" ? ? ? ? ? ? yes ? no 7 yes ?
  151. _FldNameList[5] > AnaDat.KuBesSta.AnzHaben
  152. "AnzHaben" "AnzHaben" ? ? "integer" ? ? ? ? ? ? yes ? no 10 yes ?
  153. _FldNameList[6] > AnaDat.KuBesSta.FremdLief1
  154. "FremdLief1" "FremdLief1" ? ? "character" ? ? ? ? ? ? yes ? no 100 yes ?
  155. _FldNameList[7] > AnaDat.KuBesSta.FremdLief2
  156. "FremdLief2" "FremdLief2" ? ? "character" ? ? ? ? ? ? yes ? no 100 yes ?
  157. _FldNameList[8] > AnaDat.KuBesSta.FremdLief3
  158. "FremdLief3" "FremdLief3" ? ? "character" ? ? ? ? ? ? yes ? no 100 yes ?
  159. _FldNameList[9] > AnaDat.KuBesSta.FremdLief4
  160. "FremdLief4" "FremdLief4" ? ? "character" ? ? ? ? ? ? yes ? no 100 yes ?
  161. _FldNameList[10] > AnaDat.KuBesSta.FremdLief5
  162. "FremdLief5" "FremdLief5" ? ? "character" ? ? ? ? ? ? yes ? no 100 yes ?
  163. _FldNameList[11] > AnaDat.KuBesSta.FremdWgr1
  164. "FremdWgr1" "FremdWgr1" ? ? "integer" ? ? ? ? ? ? yes ? no 11 yes ?
  165. _FldNameList[12] > AnaDat.KuBesSta.FremdWgr2
  166. "FremdWgr2" "FremdWgr2" ? ? "integer" ? ? ? ? ? ? yes ? no 11 yes ?
  167. _FldNameList[13] > AnaDat.KuBesSta.FremdWgr3
  168. "FremdWgr3" "FremdWgr3" ? ? "integer" ? ? ? ? ? ? yes ? no 11 yes ?
  169. _FldNameList[14] > AnaDat.KuBesSta.FremdWgr4
  170. "FremdWgr4" "FremdWgr4" ? ? "integer" ? ? ? ? ? ? yes ? no 11 yes ?
  171. _FldNameList[15] > AnaDat.KuBesSta.FremdWgr5
  172. "FremdWgr5" "FremdWgr5" ? ? "integer" ? ? ? ? ? ? yes ? no 11 yes ?
  173. _Design-Parent is WINDOW dTables @ ( 1.14 , 2.6 )
  174. */ /* QUERY Query-Main */
  175. &ANALYZE-RESUME
  176. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK dTables
  177. /* *************************** Main Block *************************** */
  178. { incl/datmainblock.i }
  179. SUBSCRIBE TO 'REFRESHKUBESSTA' ANYWHERE.
  180. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  181. RUN initializeObject.
  182. &ENDIF
  183. /* _UIB-CODE-BLOCK-END */
  184. &ANALYZE-RESUME
  185. /* ********************** Internal Procedures *********************** */
  186. {&DB-REQUIRED-START}
  187. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE dataAvailable dTables _DB-REQUIRED
  188. PROCEDURE dataAvailable :
  189. /*------------------------------------------------------------------------------
  190. Purpose: Super Override
  191. Parameters:
  192. Notes:
  193. ------------------------------------------------------------------------------*/
  194. { incl/datdataavailable.i }
  195. END PROCEDURE.
  196. /* _UIB-CODE-BLOCK-END */
  197. &ANALYZE-RESUME
  198. {&DB-REQUIRED-END}
  199. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI dTables _DEFAULT-DISABLE
  200. PROCEDURE disable_UI :
  201. /*------------------------------------------------------------------------------
  202. Purpose: DISABLE the User Interface
  203. Parameters: <none>
  204. Notes: Here we clean-up the user-interface by deleting
  205. dynamic widgets we have created and/or hide
  206. frames. This procedure is usually called when
  207. we are ready to "clean-up" after running.
  208. ------------------------------------------------------------------------------*/
  209. /* Hide all frames. */
  210. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  211. END PROCEDURE.
  212. /* _UIB-CODE-BLOCK-END */
  213. &ANALYZE-RESUME
  214. {&DB-REQUIRED-START}
  215. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE INAKTIVIEREN dTables _DB-REQUIRED
  216. PROCEDURE INAKTIVIEREN :
  217. /*------------------------------------------------------------------------------
  218. Purpose:
  219. Parameters: <none>
  220. Notes:
  221. ------------------------------------------------------------------------------*/
  222. { incl/datinaktivieren.i }
  223. END PROCEDURE.
  224. /* _UIB-CODE-BLOCK-END */
  225. &ANALYZE-RESUME
  226. {&DB-REQUIRED-END}
  227. {&DB-REQUIRED-START}
  228. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject dTables _DB-REQUIRED
  229. PROCEDURE initializeObject :
  230. /*------------------------------------------------------------------------------
  231. Purpose: Super Override
  232. Parameters:
  233. Notes:
  234. ------------------------------------------------------------------------------*/
  235. { incl/datinitialize.i }
  236. END PROCEDURE.
  237. /* _UIB-CODE-BLOCK-END */
  238. &ANALYZE-RESUME
  239. {&DB-REQUIRED-END}
  240. {&DB-REQUIRED-START}
  241. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REAKTIVIEREN dTables _DB-REQUIRED
  242. PROCEDURE REAKTIVIEREN :
  243. /*------------------------------------------------------------------------------
  244. Purpose:
  245. Parameters: <none>
  246. Notes:
  247. ------------------------------------------------------------------------------*/
  248. { incl/datreaktivieren.i }
  249. END PROCEDURE.
  250. /* _UIB-CODE-BLOCK-END */
  251. &ANALYZE-RESUME
  252. {&DB-REQUIRED-END}
  253. {&DB-REQUIRED-START}
  254. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REFRESHKUBESSTA dTables _DB-REQUIRED
  255. PROCEDURE REFRESHKUBESSTA :
  256. /*------------------------------------------------------------------------------
  257. Purpose:
  258. Parameters: <none>
  259. Notes:
  260. ------------------------------------------------------------------------------*/
  261. RUN REPOS_TABELLE.
  262. RUN refreshRow.
  263. END PROCEDURE.
  264. /* _UIB-CODE-BLOCK-END */
  265. &ANALYZE-RESUME
  266. {&DB-REQUIRED-END}
  267. {&DB-REQUIRED-START}
  268. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE refreshRow dTables _DB-REQUIRED
  269. PROCEDURE refreshRow :
  270. /*------------------------------------------------------------------------------
  271. Purpose: Super Override
  272. Parameters:
  273. Notes:
  274. ------------------------------------------------------------------------------*/
  275. /* Code placed here will execute PRIOR to standard behavior. */
  276. RUN SUPER.
  277. /* Code placed here will execute AFTER standard behavior. */
  278. END PROCEDURE.
  279. /* _UIB-CODE-BLOCK-END */
  280. &ANALYZE-RESUME
  281. {&DB-REQUIRED-END}
  282. {&DB-REQUIRED-START}
  283. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPOS_TABELLE dTables _DB-REQUIRED
  284. PROCEDURE REPOS_TABELLE :
  285. /*------------------------------------------------------------------------------
  286. Purpose:
  287. Parameters: <none>
  288. Notes:
  289. ------------------------------------------------------------------------------*/
  290. { incl/datrepos.i }
  291. END PROCEDURE.
  292. /* _UIB-CODE-BLOCK-END */
  293. &ANALYZE-RESUME
  294. {&DB-REQUIRED-END}
  295. {&DB-REQUIRED-START}
  296. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_FILTER dTables _DB-REQUIRED
  297. PROCEDURE SET_FILTER :
  298. /*------------------------------------------------------------------------------
  299. Purpose:
  300. Parameters: <none>
  301. Notes:
  302. ------------------------------------------------------------------------------*/
  303. { incl/datsetfilter.i }
  304. END PROCEDURE.
  305. /* _UIB-CODE-BLOCK-END */
  306. &ANALYZE-RESUME
  307. {&DB-REQUIRED-END}
  308. {&DB-REQUIRED-START}
  309. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_OPENFLAG dTables _DB-REQUIRED
  310. PROCEDURE SET_OPENFLAG :
  311. /*------------------------------------------------------------------------------
  312. Purpose:
  313. Parameters: <none>
  314. Notes:
  315. ------------------------------------------------------------------------------*/
  316. { incl/datsetopenflag.i }
  317. END PROCEDURE.
  318. /* _UIB-CODE-BLOCK-END */
  319. &ANALYZE-RESUME
  320. {&DB-REQUIRED-END}
  321. {&DB-REQUIRED-START}
  322. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_SORT dTables _DB-REQUIRED
  323. PROCEDURE SET_SORT :
  324. /*------------------------------------------------------------------------------
  325. Purpose:
  326. Parameters: <none>
  327. Notes:
  328. ------------------------------------------------------------------------------*/
  329. { incl/datsetsort.i }
  330. END PROCEDURE.
  331. /* _UIB-CODE-BLOCK-END */
  332. &ANALYZE-RESUME
  333. {&DB-REQUIRED-END}
  334. /* ************************ Function Implementations ***************** */
  335. {&DB-REQUIRED-START}
  336. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getQueryBuffer dTables _DB-REQUIRED
  337. FUNCTION getQueryBuffer RETURNS HANDLE
  338. ( /* parameter-definitions */ ) :
  339. /*------------------------------------------------------------------------------
  340. Purpose:
  341. Notes:
  342. ------------------------------------------------------------------------------*/
  343. RETURN BUFFER rowObject:HANDLE.
  344. END FUNCTION.
  345. /* _UIB-CODE-BLOCK-END */
  346. &ANALYZE-RESUME
  347. {&DB-REQUIRED-END}
  348. {&DB-REQUIRED-START}
  349. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION openQuery dTables _DB-REQUIRED
  350. FUNCTION openQuery RETURNS LOGICAL
  351. ( /* parameter-definitions */ ) :
  352. /*------------------------------------------------------------------------------
  353. Purpose: Super Override
  354. Notes:
  355. ------------------------------------------------------------------------------*/
  356. DEF VAR Felder AS CHAR NO-UNDO.
  357. DEF VAR Inhalt AS CHAR NO-UNDO.
  358. DEF VAR ix AS INT NO-UNDO.
  359. DEF VAR cFeld AS CHAR NO-UNDO.
  360. /* IF NOT fOpen THEN RETURN FALSE. */
  361. xWhere = ''.
  362. xSort = ''.
  363. xString = ''.
  364. Felder = DYNAMIC-FUNCTION('getForeignFields':U) NO-ERROR.
  365. Inhalt = DYNAMIC-FUNCTION('getForeignValues':U) NO-ERROR.
  366. /* ix = LOOKUP('Feld', Felder, ',') / 2. */
  367. /* cFeld = ENTRY (ix , Inhalt, CHR(01)). */
  368. /* xWhere = 'Aufko.Firma = ' + QUOTER(Firma) + ' AND ' */
  369. /* + 'Aufko.Auf_Sta = ' + STRING(Auf_Sta) + ' '. */
  370. /* xString = 'FOR EACH Debop ' + xSort + 'WHERE ' */
  371. /* + 'Debop.Firma = "' + Firma + '" AND ' */
  372. /* + 'Debop.Knr = ' + STRING(Knr) + ' ' */
  373. /* + 'NO-LOCK BY Debop.FakDat DESCENDING INDEXED-REPOSITION '. */
  374. { incl/datopenquery.i }
  375. IF xWhere <> '' THEN DYNAMIC-FUNCTION('setQueryWhere':U , INPUT xWhere ).
  376. IF xString <> '' THEN DYNAMIC-FUNCTION('setQueryString':U, INPUT xString).
  377. IF xSort <> '' THEN DYNAMIC-FUNCTION('setQuerySort':U , INPUT xSort ).
  378. RETURN SUPER( ).
  379. END FUNCTION.
  380. /* _UIB-CODE-BLOCK-END */
  381. &ANALYZE-RESUME
  382. {&DB-REQUIRED-END}