d-aktkeine.w 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431
  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 AktKeine
  30. /* &SCOPED-DEFINE TabWhere USE-INDEX AktKeine-k1 ~ */
  31. /* WHERE {&Tabelle}.Firma = tRowObject.Firma ~ */
  32. /* AND {&Tabelle}.Aufnr = tRowObject.Aufnr */
  33. { incl/datdefinition.i }
  34. /* DEF VAR xWhere AS CHAR NO-UNDO. */
  35. /* DEF VAR xSort AS CHAR NO-UNDO. */
  36. /* DEF VAR Firma AS CHAR NO-UNDO. */
  37. /* DEF VAR SAktiv AS LOG NO-UNDO INIT FALSE. */
  38. /* DEF VAR fData AS LOG INIT FALSE NO-UNDO. */
  39. /* */
  40. /* DEF TEMP-TABLE tRowObject LIKE AktKeine. */
  41. /* */
  42. /* _UIB-CODE-BLOCK-END */
  43. &ANALYZE-RESUME
  44. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  45. /* ******************** Preprocessor Definitions ******************** */
  46. &Scoped-define PROCEDURE-TYPE SmartDataObject
  47. &Scoped-define DB-AWARE yes
  48. &Scoped-define ADM-SUPPORTED-LINKS Data-Source,Data-Target,Navigation-Target,Update-Target,Commit-Target,Filter-Target
  49. /* Db-Required definitions. */
  50. &IF DEFINED(DB-REQUIRED) = 0 &THEN
  51. &GLOBAL-DEFINE DB-REQUIRED TRUE
  52. &ENDIF
  53. &GLOBAL-DEFINE DB-REQUIRED-START &IF {&DB-REQUIRED} &THEN
  54. &GLOBAL-DEFINE DB-REQUIRED-END &ENDIF
  55. &Scoped-define QUERY-NAME Query-Main
  56. /* Internal Tables (found by Frame, Query & Browse Queries) */
  57. &Scoped-define INTERNAL-TABLES AktKeine
  58. /* Definitions for QUERY Query-Main */
  59. &Scoped-Define ENABLED-FIELDS Firma Knr Wgr Warengrp Aktion
  60. &Scoped-define ENABLED-FIELDS-IN-AktKeine Firma Knr Wgr Aktion
  61. &Scoped-Define DATA-FIELDS Firma Knr Wgr Warengrp Aktion
  62. &Scoped-define DATA-FIELDS-IN-AktKeine Firma Knr Wgr Aktion
  63. &Scoped-Define MANDATORY-FIELDS Firma
  64. &Scoped-Define APPLICATION-SERVICE
  65. &Scoped-Define ASSIGN-LIST
  66. &Scoped-Define DATA-FIELD-DEFS "d-aktkeine.i"
  67. &Scoped-define QUERY-STRING-Query-Main FOR EACH AktKeine NO-LOCK INDEXED-REPOSITION
  68. {&DB-REQUIRED-START}
  69. &Scoped-define OPEN-QUERY-Query-Main OPEN QUERY Query-Main FOR EACH AktKeine NO-LOCK INDEXED-REPOSITION.
  70. {&DB-REQUIRED-END}
  71. &Scoped-define TABLES-IN-QUERY-Query-Main AktKeine
  72. &Scoped-define FIRST-TABLE-IN-QUERY-Query-Main AktKeine
  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 openQuery dTables _DB-REQUIRED
  80. FUNCTION openQuery RETURNS LOGICAL
  81. ( /* parameter-definitions */ ) FORWARD.
  82. /* _UIB-CODE-BLOCK-END */
  83. &ANALYZE-RESUME
  84. {&DB-REQUIRED-END}
  85. /* *********************** Control Definitions ********************** */
  86. {&DB-REQUIRED-START}
  87. /* Query definitions */
  88. &ANALYZE-SUSPEND
  89. DEFINE QUERY Query-Main FOR
  90. AktKeine SCROLLING.
  91. &ANALYZE-RESUME
  92. {&DB-REQUIRED-END}
  93. /* ************************ Frame Definitions *********************** */
  94. /* *********************** Procedure Settings ************************ */
  95. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  96. /* Settings for THIS-PROCEDURE
  97. Type: SmartDataObject
  98. Allow: Query
  99. Frames: 0
  100. Add Fields to: Neither
  101. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER DB-AWARE
  102. */
  103. /* This procedure should always be RUN PERSISTENT. Report the error, */
  104. /* then cleanup and return. */
  105. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  106. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  107. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  108. RETURN.
  109. END.
  110. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  111. /* ************************* Create Window ************************** */
  112. &ANALYZE-SUSPEND _CREATE-WINDOW
  113. /* DESIGN Window definition (used by the UIB)
  114. CREATE WINDOW dTables ASSIGN
  115. HEIGHT = 2.91
  116. WIDTH = 82.2.
  117. /* END WINDOW DEFINITION */
  118. */
  119. &ANALYZE-RESUME
  120. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB dTables
  121. /* ************************* Included-Libraries *********************** */
  122. {src/adm2/data.i}
  123. /* _UIB-CODE-BLOCK-END */
  124. &ANALYZE-RESUME
  125. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  126. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  127. /* SETTINGS FOR WINDOW dTables
  128. VISIBLE,,RUN-PERSISTENT */
  129. /* _RUN-TIME-ATTRIBUTES-END */
  130. &ANALYZE-RESUME
  131. /* Setting information for Queries and Browse Widgets fields */
  132. &ANALYZE-SUSPEND _QUERY-BLOCK QUERY Query-Main
  133. /* Query rebuild information for SmartDataObject Query-Main
  134. _TblList = "AnaDat.AktKeine"
  135. _Options = "NO-LOCK INDEXED-REPOSITION"
  136. _FldNameList[1] > AnaDat.AktKeine.Firma
  137. "Firma" "Firma" ? ? "character" ? ? ? ? ? ? yes ? yes 8 yes ""
  138. _FldNameList[2] > AnaDat.AktKeine.Knr
  139. "Knr" "Knr" ? ? "integer" ? ? ? ? ? ? yes ? no 7.2 yes ""
  140. _FldNameList[3] > AnaDat.AktKeine.Wgr
  141. "Wgr" "Wgr" ? "999" "integer" ? ? ? ? ? ? yes ? no 4 yes ""
  142. _FldNameList[4] > "_<CALC>"
  143. "DYNAMIC-FUNCTION('GETWARENGRP':U, RowObject.Wgr)" "Warengrp" "Warengruppe" "x(30)" "character" ? ? ? ? ? ? yes ? no 30 no ?
  144. _FldNameList[5] > AnaDat.AktKeine.Aktion
  145. "Aktion" "Aktion" ? ? "logical" ? ? ? ? ? ? yes ? no 6 yes ""
  146. _Design-Parent is WINDOW dTables @ ( 1.14 , 2.6 )
  147. */ /* QUERY Query-Main */
  148. &ANALYZE-RESUME
  149. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK dTables
  150. /* *************************** Main Block *************************** */
  151. { incl/datmainblock.i }
  152. SUBSCRIBE TO 'SETOPENFLAGDEBST' ANYWHERE.
  153. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  154. RUN initializeObject.
  155. &ENDIF
  156. /* _UIB-CODE-BLOCK-END */
  157. &ANALYZE-RESUME
  158. /* ********************** Internal Procedures *********************** */
  159. {&DB-REQUIRED-START}
  160. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DATA.CALCULATE dTables DATA.CALCULATE _DB-REQUIRED
  161. PROCEDURE DATA.CALCULATE :
  162. /*------------------------------------------------------------------------------
  163. Purpose: Calculate all the Calculated Expressions found in the
  164. SmartDataObject.
  165. Parameters: <none>
  166. ------------------------------------------------------------------------------*/
  167. ASSIGN
  168. rowObject.Warengrp = (DYNAMIC-FUNCTION('GETWARENGRP':U, RowObject.Wgr))
  169. .
  170. END PROCEDURE.
  171. /* _UIB-CODE-BLOCK-END */
  172. &ANALYZE-RESUME
  173. {&DB-REQUIRED-END}
  174. {&DB-REQUIRED-START}
  175. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE dataAvailable dTables _DB-REQUIRED
  176. PROCEDURE dataAvailable :
  177. /*------------------------------------------------------------------------------
  178. Purpose: Super Override
  179. Parameters:
  180. Notes:
  181. ------------------------------------------------------------------------------*/
  182. { incl/datdataavailable.i }
  183. END PROCEDURE.
  184. /* _UIB-CODE-BLOCK-END */
  185. &ANALYZE-RESUME
  186. {&DB-REQUIRED-END}
  187. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI dTables _DEFAULT-DISABLE
  188. PROCEDURE disable_UI :
  189. /*------------------------------------------------------------------------------
  190. Purpose: DISABLE the User Interface
  191. Parameters: <none>
  192. Notes: Here we clean-up the user-interface by deleting
  193. dynamic widgets we have created and/or hide
  194. frames. This procedure is usually called when
  195. we are ready to "clean-up" after running.
  196. ------------------------------------------------------------------------------*/
  197. /* Hide all frames. */
  198. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  199. END PROCEDURE.
  200. /* _UIB-CODE-BLOCK-END */
  201. &ANALYZE-RESUME
  202. {&DB-REQUIRED-START}
  203. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject dTables _DB-REQUIRED
  204. PROCEDURE initializeObject :
  205. /*------------------------------------------------------------------------------
  206. Purpose: Super Override
  207. Parameters:
  208. Notes:
  209. ------------------------------------------------------------------------------*/
  210. { incl/datinitialize.i }
  211. END PROCEDURE.
  212. /* _UIB-CODE-BLOCK-END */
  213. &ANALYZE-RESUME
  214. {&DB-REQUIRED-END}
  215. {&DB-REQUIRED-START}
  216. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LOESCHEN dTables _DB-REQUIRED
  217. PROCEDURE LOESCHEN :
  218. /*------------------------------------------------------------------------------
  219. Purpose:
  220. Parameters: <none>
  221. Notes:
  222. ------------------------------------------------------------------------------*/
  223. DEF VAR hBuffer AS HANDLE NO-UNDO.
  224. DEF VAR hFeld AS HANDLE NO-UNDO.
  225. fData = TRUE.
  226. RUN dataAvailable ( INPUT 'SAME' ).
  227. FIND FIRST tRowObject NO-LOCK NO-ERROR.
  228. IF NOT AVAILABLE tRowObject THEN CREATE tRowObject.
  229. REPEAT TRANSACTION:
  230. FIND AktKeine OF tRowObject.
  231. DELETE AktKeine.
  232. RELEASE AktKeine.
  233. LEAVE.
  234. END.
  235. RUN refreshRow.
  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 SET_FILTER dTables _DB-REQUIRED
  242. PROCEDURE SET_FILTER :
  243. /*------------------------------------------------------------------------------
  244. Purpose:
  245. Parameters: <none>
  246. Notes:
  247. ------------------------------------------------------------------------------*/
  248. { incl/datsetfilter.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 SET_OPENFLAG dTables _DB-REQUIRED
  255. PROCEDURE SET_OPENFLAG :
  256. /*------------------------------------------------------------------------------
  257. Purpose:
  258. Parameters: <none>
  259. Notes:
  260. ------------------------------------------------------------------------------*/
  261. { incl/datsetopenflag.i }
  262. END PROCEDURE.
  263. /* _UIB-CODE-BLOCK-END */
  264. &ANALYZE-RESUME
  265. {&DB-REQUIRED-END}
  266. {&DB-REQUIRED-START}
  267. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_SORT dTables _DB-REQUIRED
  268. PROCEDURE SET_SORT :
  269. /*------------------------------------------------------------------------------
  270. Purpose:
  271. Parameters: <none>
  272. Notes:
  273. ------------------------------------------------------------------------------*/
  274. { incl/datsetsort.i }
  275. END PROCEDURE.
  276. /* _UIB-CODE-BLOCK-END */
  277. &ANALYZE-RESUME
  278. {&DB-REQUIRED-END}
  279. /* ************************ Function Implementations ***************** */
  280. {&DB-REQUIRED-START}
  281. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION openQuery dTables _DB-REQUIRED
  282. FUNCTION openQuery RETURNS LOGICAL
  283. ( /* parameter-definitions */ ) :
  284. /*------------------------------------------------------------------------------
  285. Purpose: Super Override
  286. Notes:
  287. ------------------------------------------------------------------------------*/
  288. DEF VAR cString AS CHAR NO-UNDO.
  289. cString = DYNAMIC-FUNCTION('getForeignValues':U).
  290. IF cString = ? THEN RETURN FALSE.
  291. /* xWhere = ''. */
  292. /* DYNAMIC-FUNCTION('setQueryWhere':U, INPUT xWhere). */
  293. /* xSort = ''. */
  294. /* DYNAMIC-FUNCTION('setQuerySort':U, INPUT xSort). */
  295. /* xWhere = ''. */
  296. /* DYNAMIC-FUNCTION('setQueryString':U, INPUT xWhere). */
  297. RETURN SUPER( ).
  298. END FUNCTION.
  299. /* _UIB-CODE-BLOCK-END */
  300. &ANALYZE-RESUME
  301. {&DB-REQUIRED-END}