f-aktionen.w 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v9r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. anadat PROGRESS
  5. */
  6. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  7. /* Temp-Table and Buffer definitions */
  8. DEFINE TEMP-TABLE TGruppen NO-UNDO LIKE Tabel.
  9. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS fFrameWin
  10. /*------------------------------------------------------------------------
  11. File:
  12. Description: from cntnrfrm.w - ADM2 SmartFrame Template
  13. Input Parameters:
  14. <none>
  15. Output Parameters:
  16. <none>
  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. DEF VAR SAktiv AS LOG INIT FALSE NO-UNDO.
  30. DEF VAR Firma AS CHAR NO-UNDO.
  31. DEF VAR ADFirma AS CHAR NO-UNDO.
  32. DEF VAR VRecArt AS CHAR NO-UNDO.
  33. DEF VAR FMut AS LOG NO-UNDO.
  34. DEF VAR ix AS INT NO-UNDO.
  35. DEF VAR VGrp AS INT NO-UNDO.
  36. DEF VAR ARecid AS RECID NO-UNDO.
  37. DEF WORKFILE WNr FIELD Grp AS INT.
  38. DEF WORKFILE WAktionen LIKE Aktionen.
  39. /* _UIB-CODE-BLOCK-END */
  40. &ANALYZE-RESUME
  41. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  42. /* ******************** Preprocessor Definitions ******************** */
  43. &Scoped-define PROCEDURE-TYPE SmartFrame
  44. &Scoped-define DB-AWARE no
  45. &Scoped-define ADM-CONTAINER FRAME
  46. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  47. /* Name of first Frame and/or Browse and/or first Query */
  48. &Scoped-define FRAME-NAME fMain
  49. &Scoped-define BROWSE-NAME Br_Gruppen
  50. /* Internal Tables (found by Frame, Query & Browse Queries) */
  51. &Scoped-define INTERNAL-TABLES TGruppen
  52. /* Definitions for BROWSE Br_Gruppen */
  53. &Scoped-define FIELDS-IN-QUERY-Br_Gruppen TGruppen.CodeI TGruppen.Bez1
  54. &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Gruppen
  55. &Scoped-define OPEN-QUERY-Br_Gruppen OPEN QUERY Br_Gruppen FOR EACH TGruppen NO-LOCK INDEXED-REPOSITION.
  56. &Scoped-define TABLES-IN-QUERY-Br_Gruppen TGruppen
  57. &Scoped-define FIRST-TABLE-IN-QUERY-Br_Gruppen TGruppen
  58. /* Definitions for FRAME fMain */
  59. /* Standard List Definitions */
  60. &Scoped-Define ENABLED-OBJECTS Br_Gruppen CB_Gruppen Btn_Add RECT-4 RECT-5
  61. &Scoped-Define DISPLAYED-OBJECTS CB_Gruppen
  62. /* Custom List Definitions */
  63. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  64. /* _UIB-PREPROCESSOR-BLOCK-END */
  65. &ANALYZE-RESUME
  66. /* *********************** Control Definitions ********************** */
  67. /* Definitions of the field level widgets */
  68. DEFINE BUTTON Btn_Add
  69. IMAGE-UP FILE "grafik/add.bmp":U
  70. LABEL "&add"
  71. SIZE 4.2 BY 1.
  72. DEFINE VARIABLE CB_Gruppen AS CHARACTER FORMAT "X(256)":U
  73. VIEW-AS COMBO-BOX INNER-LINES 5
  74. LIST-ITEM-PAIRS "Item 1","Item 1"
  75. DROP-DOWN-LIST
  76. SIZE 34.4 BY 1
  77. BGCOLOR 15 NO-UNDO.
  78. DEFINE RECTANGLE RECT-4
  79. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  80. SIZE 42 BY 9.24.
  81. DEFINE RECTANGLE RECT-5
  82. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  83. SIZE 42 BY .05.
  84. /* Query definitions */
  85. &ANALYZE-SUSPEND
  86. DEFINE QUERY Br_Gruppen FOR
  87. TGruppen SCROLLING.
  88. &ANALYZE-RESUME
  89. /* Browse definitions */
  90. DEFINE BROWSE Br_Gruppen
  91. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Gruppen fFrameWin _STRUCTURED
  92. QUERY Br_Gruppen NO-LOCK DISPLAY
  93. TGruppen.CodeI COLUMN-LABEL "Grp" FORMAT "999":U WIDTH 4
  94. TGruppen.Bez1 FORMAT "x(30)":U
  95. /* _UIB-CODE-BLOCK-END */
  96. &ANALYZE-RESUME
  97. WITH NO-ROW-MARKERS SEPARATORS SIZE 40 BY 6.67
  98. BGCOLOR 15 EXPANDABLE.
  99. /* ************************ Frame Definitions *********************** */
  100. DEFINE FRAME fMain
  101. Br_Gruppen AT ROW 1.48 COL 3
  102. CB_Gruppen AT ROW 9 COL 1 COLON-ALIGNED NO-LABEL
  103. Btn_Add AT ROW 9 COL 39
  104. RECT-4 AT ROW 1.24 COL 2
  105. RECT-5 AT ROW 8.62 COL 2
  106. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  107. SIDE-LABELS NO-UNDERLINE THREE-D
  108. AT COL 1 ROW 1
  109. SIZE 44.2 BY 9.67.
  110. /* *********************** Procedure Settings ************************ */
  111. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  112. /* Settings for THIS-PROCEDURE
  113. Type: SmartFrame
  114. Allow: Basic,Browse,DB-Fields,Query,Smart
  115. Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  116. Other Settings: PERSISTENT-ONLY COMPILE
  117. Temp-Tables and Buffers:
  118. TABLE: TGruppen T "?" NO-UNDO AnaDat Tabel
  119. END-TABLES.
  120. */
  121. /* This procedure should always be RUN PERSISTENT. Report the error, */
  122. /* then cleanup and return. */
  123. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  124. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  125. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  126. RETURN.
  127. END.
  128. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  129. /* ************************* Create Window ************************** */
  130. &ANALYZE-SUSPEND _CREATE-WINDOW
  131. /* DESIGN Window definition (used by the UIB)
  132. CREATE WINDOW fFrameWin ASSIGN
  133. HEIGHT = 9.67
  134. WIDTH = 44.2.
  135. /* END WINDOW DEFINITION */
  136. */
  137. &ANALYZE-RESUME
  138. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB fFrameWin
  139. /* ************************* Included-Libraries *********************** */
  140. {src/adm2/containr.i}
  141. /* _UIB-CODE-BLOCK-END */
  142. &ANALYZE-RESUME
  143. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  144. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  145. /* SETTINGS FOR WINDOW fFrameWin
  146. VISIBLE,,RUN-PERSISTENT */
  147. /* SETTINGS FOR FRAME fMain
  148. NOT-VISIBLE */
  149. /* BROWSE-TAB Br_Gruppen 1 fMain */
  150. ASSIGN
  151. FRAME fMain:HIDDEN = TRUE.
  152. /* _RUN-TIME-ATTRIBUTES-END */
  153. &ANALYZE-RESUME
  154. /* Setting information for Queries and Browse Widgets fields */
  155. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Gruppen
  156. /* Query rebuild information for BROWSE Br_Gruppen
  157. _TblList = "Temp-Tables.TGruppen"
  158. _Options = "NO-LOCK INDEXED-REPOSITION"
  159. _FldNameList[1] > Temp-Tables.TGruppen.CodeI
  160. "TGruppen.CodeI" "Grp" "999" "integer" ? ? ? ? ? ? no ? no no "4" yes no no "U" "" ""
  161. _FldNameList[2] = Temp-Tables.TGruppen.Bez1
  162. _Query is NOT OPENED
  163. */ /* BROWSE Br_Gruppen */
  164. &ANALYZE-RESUME
  165. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME fMain
  166. /* Query rebuild information for FRAME fMain
  167. _Options = ""
  168. _Query is NOT OPENED
  169. */ /* FRAME fMain */
  170. &ANALYZE-RESUME
  171. /* ************************ Control Triggers ************************ */
  172. &Scoped-define BROWSE-NAME Br_Gruppen
  173. &Scoped-define SELF-NAME Br_Gruppen
  174. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Gruppen fFrameWin
  175. ON ALT-DEL OF Br_Gruppen IN FRAME fMain
  176. DO:
  177. DELETE TGruppen.
  178. RUN ENTFERNEN.
  179. END.
  180. /* _UIB-CODE-BLOCK-END */
  181. &ANALYZE-RESUME
  182. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Gruppen fFrameWin
  183. ON DELETE-CHARACTER OF Br_Gruppen IN FRAME fMain
  184. DO:
  185. DELETE TGruppen.
  186. RUN ENTFERNEN.
  187. END.
  188. /* _UIB-CODE-BLOCK-END */
  189. &ANALYZE-RESUME
  190. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Gruppen fFrameWin
  191. ON LEFT-MOUSE-DBLCLICK OF Br_Gruppen IN FRAME fMain
  192. DO:
  193. DELETE TGruppen.
  194. RUN ENTFERNEN.
  195. END.
  196. /* _UIB-CODE-BLOCK-END */
  197. &ANALYZE-RESUME
  198. &Scoped-define SELF-NAME Btn_Add
  199. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Add fFrameWin
  200. ON CHOOSE OF Btn_Add IN FRAME fMain /* add */
  201. DO:
  202. FMut = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
  203. IF FMut THEN DO:
  204. APPLY 'ENTRY' TO CB_Gruppen IN FRAME {&FRAME-NAME}.
  205. RETURN NO-APPLY.
  206. END.
  207. RUN ZUFUEGEN.
  208. RETURN NO-APPLY.
  209. END.
  210. /* _UIB-CODE-BLOCK-END */
  211. &ANALYZE-RESUME
  212. &Scoped-define SELF-NAME CB_Gruppen
  213. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Gruppen fFrameWin
  214. ON ALT-INS OF CB_Gruppen IN FRAME fMain
  215. DO:
  216. FMut = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
  217. IF FMut THEN DO:
  218. APPLY 'ENTRY' TO CB_Gruppen IN FRAME {&FRAME-NAME}.
  219. RETURN NO-APPLY.
  220. END.
  221. RUN ZUFUEGEN.
  222. RETURN NO-APPLY.
  223. END.
  224. /* _UIB-CODE-BLOCK-END */
  225. &ANALYZE-RESUME
  226. &UNDEFINE SELF-NAME
  227. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK fFrameWin
  228. /* *************************** Main Block *************************** */
  229. SAktiv = DYNAMIC-FUNCTION('getSuperAktiv':U) NO-ERROR.
  230. IF SAktiv THEN DO:
  231. Firma = DYNAMIC-FUNCTION('GETMANDANT':U ) NO-ERROR.
  232. ADFirma = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR.
  233. FIND Steuer USE-INDEX Steuer-k1
  234. WHERE Steuer.Firma = Firma NO-LOCK NO-ERROR.
  235. IF Steuer.Aktionspreis = 0 THEN VRecArt = 'PREGRP'. /* Preisgruppen */
  236. IF Steuer.Aktionspreis = 1 THEN VRecArt = 'KUNDGRP'. /* Kundengruppen*/
  237. END.
  238. FOR EACH WAktionen:
  239. DELETE WAktionen.
  240. END.
  241. CREATE WAktionen.
  242. SESSION:DATA-ENTRY-RETURN = TRUE.
  243. SUBSCRIBE TO 'AKTIONS_GRUPPEN' ANYWHERE.
  244. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  245. RUN initializeObject.
  246. &ENDIF
  247. /* _UIB-CODE-BLOCK-END */
  248. &ANALYZE-RESUME
  249. /* ********************** Internal Procedures *********************** */
  250. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects fFrameWin _ADM-CREATE-OBJECTS
  251. PROCEDURE adm-create-objects :
  252. /*------------------------------------------------------------------------------
  253. Purpose: Create handles for all SmartObjects used in this procedure.
  254. After SmartObjects are initialized, then SmartLinks are added.
  255. Parameters: <none>
  256. ------------------------------------------------------------------------------*/
  257. END PROCEDURE.
  258. /* _UIB-CODE-BLOCK-END */
  259. &ANALYZE-RESUME
  260. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AKTIONS_GRUPPEN fFrameWin
  261. PROCEDURE AKTIONS_GRUPPEN :
  262. /*------------------------------------------------------------------------------
  263. Purpose:
  264. Parameters: <none>
  265. Notes:
  266. ------------------------------------------------------------------------------*/
  267. DEF INPUT PARAMETER ipAktion AS CHAR NO-UNDO.
  268. DEF VAR i1 AS INT NO-UNDO.
  269. FIND Aktionen USE-INDEX Aktionen-k1
  270. WHERE Aktionen.Firma = Firma
  271. AND Aktionen.Aktion = ipAktion NO-LOCK NO-ERROR.
  272. FOR EACH TGruppen:
  273. DELETE TGruppen.
  274. END.
  275. FIND FIRST WAktionen.
  276. DELETE WAktionen.
  277. CREATE WAktionen.
  278. ARecid = 0.
  279. IF AVAILABLE Aktionen THEN DO:
  280. BUFFER-COPY Aktionen TO WAktionen.
  281. ARecid = RECID(Aktionen).
  282. DO i1 = 1 TO 50:
  283. IF Aktionen.Gruppe[i1] = 0 THEN DO:
  284. IF i1 > 1 THEN LEAVE.
  285. IF Aktionen.Gruppe[02] = 0 THEN LEAVE.
  286. END.
  287. FIND Tabel USE-INDEX Tabel-k1
  288. WHERE Tabel.Firma = Firma
  289. AND Tabel.RecArt = VRecArt
  290. AND Tabel.CodeC = ''
  291. AND Tabel.CodeI = Aktionen.Gruppe[i1]
  292. AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR.
  293. IF NOT AVAILABLE Tabel THEN NEXT.
  294. CREATE TGruppen.
  295. BUFFER-COPY Tabel TO TGruppen.
  296. END.
  297. END.
  298. FOR EACH WNr:
  299. DELETE WNr.
  300. END.
  301. FOR EACH TGruppen NO-LOCK BY TGruppen.CodeI:
  302. CREATE WNr.
  303. ASSIGN WNr.Grp = TGruppen.CodeI.
  304. END.
  305. RUN OPENQUERY_GRUPPEN.
  306. END PROCEDURE.
  307. /* _UIB-CODE-BLOCK-END */
  308. &ANALYZE-RESUME
  309. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI fFrameWin _DEFAULT-DISABLE
  310. PROCEDURE disable_UI :
  311. /*------------------------------------------------------------------------------
  312. Purpose: DISABLE the User Interface
  313. Parameters: <none>
  314. Notes: Here we clean-up the user-interface by deleting
  315. dynamic widgets we have created and/or hide
  316. frames. This procedure is usually called when
  317. we are ready to "clean-up" after running.
  318. ------------------------------------------------------------------------------*/
  319. /* Hide all frames. */
  320. HIDE FRAME fMain.
  321. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  322. END PROCEDURE.
  323. /* _UIB-CODE-BLOCK-END */
  324. &ANALYZE-RESUME
  325. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject fFrameWin
  326. PROCEDURE enableObject :
  327. /*------------------------------------------------------------------------------
  328. Purpose: Super Override
  329. Parameters:
  330. Notes:
  331. ------------------------------------------------------------------------------*/
  332. DO WITH FRAME {&FRAME-NAME}:
  333. CASE VRecArt:
  334. WHEN 'PREGRP' THEN DO:
  335. RUN COMBO_PREISGRP ( INPUT CB_Gruppen:HANDLE ).
  336. TGruppen.Bez1:LABEL IN BROWSE {&BROWSE-NAME} = 'Preisgruppen'.
  337. END.
  338. WHEN 'KUNDGRP' THEN DO:
  339. RUN COMBO_KUNDENGRP ( INPUT CB_Gruppen:HANDLE ).
  340. TGruppen.Bez1:LABEL IN BROWSE {&BROWSE-NAME} = 'Kundengruppen'.
  341. END.
  342. END CASE.
  343. END.
  344. RUN SUPER.
  345. END PROCEDURE.
  346. /* _UIB-CODE-BLOCK-END */
  347. &ANALYZE-RESUME
  348. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI fFrameWin _DEFAULT-ENABLE
  349. PROCEDURE enable_UI :
  350. /*------------------------------------------------------------------------------
  351. Purpose: ENABLE the User Interface
  352. Parameters: <none>
  353. Notes: Here we display/view/enable the widgets in the
  354. user-interface. In addition, OPEN all queries
  355. associated with each FRAME and BROWSE.
  356. These statements here are based on the "Other
  357. Settings" section of the widget Property Sheets.
  358. ------------------------------------------------------------------------------*/
  359. DISPLAY CB_Gruppen
  360. WITH FRAME fMain.
  361. ENABLE Br_Gruppen CB_Gruppen Btn_Add RECT-4 RECT-5
  362. WITH FRAME fMain.
  363. {&OPEN-BROWSERS-IN-QUERY-fMain}
  364. END PROCEDURE.
  365. /* _UIB-CODE-BLOCK-END */
  366. &ANALYZE-RESUME
  367. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTFERNEN fFrameWin
  368. PROCEDURE ENTFERNEN :
  369. /*------------------------------------------------------------------------------
  370. Purpose:
  371. Parameters: <none>
  372. Notes:
  373. ------------------------------------------------------------------------------*/
  374. DEF VAR xAktion AS CHAR NO-UNDO.
  375. FOR EACH WNr:
  376. DELETE WNr.
  377. END.
  378. FIND FIRST WAktionen.
  379. FOR EACH TGruppen NO-LOCK:
  380. CREATE WNr.
  381. ASSIGN WNr.Grp = TGruppen.CodeI.
  382. END.
  383. REPEAT TRANSACTION:
  384. FIND Aktionen WHERE RECID(Aktionen) = ARecid.
  385. xAktion = Aktionen.Aktion.
  386. Aktionen.Gruppe = 0.
  387. ix = 0.
  388. FOR EACH WNr BY WNr.Grp:
  389. ix = ix + 1.
  390. Aktionen.Gruppe[ix] = WNr.Grp.
  391. END.
  392. RELEASE Aktionen.
  393. LEAVE.
  394. END.
  395. RUN AKTIONS_GRUPPEN ( INPUT xAktion ).
  396. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  397. RETURN NO-APPLY.
  398. END PROCEDURE.
  399. /* _UIB-CODE-BLOCK-END */
  400. &ANALYZE-RESUME
  401. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE OPENQUERY_GRUPPEN fFrameWin
  402. PROCEDURE OPENQUERY_GRUPPEN :
  403. /*------------------------------------------------------------------------------
  404. Purpose:
  405. Parameters: <none>
  406. Notes:
  407. ------------------------------------------------------------------------------*/
  408. OPEN QUERY Br_Gruppen
  409. FOR EACH TGruppen NO-LOCK.
  410. END PROCEDURE.
  411. /* _UIB-CODE-BLOCK-END */
  412. &ANALYZE-RESUME
  413. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ZUFUEGEN fFrameWin
  414. PROCEDURE ZUFUEGEN :
  415. /*------------------------------------------------------------------------------
  416. Purpose:
  417. Parameters: <none>
  418. Notes:
  419. ------------------------------------------------------------------------------*/
  420. DEF VAR xAktion AS CHAR NO-UNDO.
  421. DEF VAR FNull AS LOG NO-UNDO.
  422. DEF VAR Vorhanden AS LOG NO-UNDO.
  423. VGrp = INTEGER(CB_Gruppen:SCREEN-VALUE IN FRAME {&FRAME-NAME}).
  424. Vorhanden = FALSE.
  425. FOR EACH WNr:
  426. IF WNr.Grp = VGrp THEN DO:
  427. Vorhanden = TRUE.
  428. LEAVE.
  429. END.
  430. END.
  431. IF NOT Vorhanden THEN DO:
  432. CREATE WNr.
  433. ASSIGN WNr.Grp = VGrp.
  434. END.
  435. REPEAT TRANSACTION:
  436. FIND Aktionen WHERE RECID(Aktionen) = ARecid.
  437. xAktion = Aktionen.Aktion.
  438. Aktionen.Gruppe = 0.
  439. ix = 0.
  440. FOR EACH WNr BY WNr.Grp:
  441. ix = ix + 1.
  442. Aktionen.Gruppe[ix] = WNr.Grp.
  443. END.
  444. RELEASE Aktionen.
  445. LEAVE.
  446. END.
  447. RUN AKTIONS_GRUPPEN ( INPUT xAktion ).
  448. APPLY 'ENTRY' TO CB_Gruppen IN FRAME {&FRAME-NAME}.
  449. RETURN NO-APPLY.
  450. END PROCEDURE.
  451. /* _UIB-CODE-BLOCK-END */
  452. &ANALYZE-RESUME