v-verband.w 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719
  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. /* Temp-Table and Buffer definitions */
  9. DEFINE TEMP-TABLE RowObject NO-UNDO
  10. {"d-verband.i"}.
  11. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS vTableWin
  12. /*------------------------------------------------------------------------
  13. File:
  14. Description: from viewer.w - Template for SmartDataViewer objects
  15. Input Parameters:
  16. <none>
  17. Output Parameters:
  18. <none>
  19. ------------------------------------------------------------------------*/
  20. /* This .W file was created with the Progress AppBuilder. */
  21. /*----------------------------------------------------------------------*/
  22. /* Create an unnamed pool to store all the widgets created
  23. by this procedure. This is a good default which assures
  24. that this procedure's triggers and internal procedures
  25. will execute in this procedure's storage, and that proper
  26. cleanup will occur on deletion of the procedure. */
  27. CREATE WIDGET-POOL.
  28. /* *************************** Definitions ************************** */
  29. /* Komma-Trennzeichen */
  30. /* Keyfelder werden beim Mutieren nicht "Enabled" */
  31. &Scoped-define ERSTES_FELD CodeI
  32. &Scoped-define LETZTES_FELD Bez1
  33. &Scoped-define KEY_FELDER CodeI
  34. &Scoped-define NUR_LESEN Firma,RecArt,CodeC,Sprcd
  35. { incl/viwdefinition.i }
  36. DEF VAR cRecArt AS CHAR INIT 'VERBAND' NO-UNDO.
  37. {src/adm2/widgetprto.i}
  38. /* _UIB-CODE-BLOCK-END */
  39. &ANALYZE-RESUME
  40. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  41. /* ******************** Preprocessor Definitions ******************** */
  42. &Scoped-define PROCEDURE-TYPE SmartDataViewer
  43. &Scoped-define DB-AWARE no
  44. &Scoped-define ADM-CONTAINER FRAME
  45. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  46. /* Include file with RowObject temp-table definition */
  47. &Scoped-define DATA-FIELD-DEFS "d-verband.i"
  48. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  49. &Scoped-define FRAME-NAME F-Main
  50. /* Standard List Definitions */
  51. &Scoped-Define ENABLED-FIELDS RowObject.CodeI RowObject.Bez1
  52. &Scoped-define ENABLED-TABLES RowObject
  53. &Scoped-define FIRST-ENABLED-TABLE RowObject
  54. &Scoped-Define ENABLED-OBJECTS RECT-2
  55. &Scoped-Define DISPLAYED-FIELDS RowObject.CodeI RowObject.Firma ~
  56. RowObject.Recart RowObject.CodeC RowObject.Sprcd RowObject.Bez1
  57. &Scoped-define DISPLAYED-TABLES RowObject
  58. &Scoped-define FIRST-DISPLAYED-TABLE RowObject
  59. /* Custom List Definitions */
  60. /* ADM-ASSIGN-FIELDS,List-2,List-3,List-4,List-5,List-6 */
  61. /* _UIB-PREPROCESSOR-BLOCK-END */
  62. &ANALYZE-RESUME
  63. /* *********************** Control Definitions ********************** */
  64. /* Definitions of the field level widgets */
  65. DEFINE RECTANGLE RECT-2
  66. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  67. SIZE 80 BY 2.86.
  68. /* ************************ Frame Definitions *********************** */
  69. DEFINE FRAME F-Main
  70. RowObject.CodeI AT ROW 1.52 COL 13 COLON-ALIGNED WIDGET-ID 6
  71. LABEL "Verb.-Grp."
  72. VIEW-AS FILL-IN NATIVE
  73. SIZE 10.4 BY 1
  74. BGCOLOR 15
  75. RowObject.Firma AT ROW 2 COL 48 COLON-ALIGNED WIDGET-ID 8
  76. VIEW-AS FILL-IN NATIVE
  77. SIZE 4 BY 1
  78. BGCOLOR 15 NO-TAB-STOP
  79. RowObject.Recart AT ROW 2 COL 48 COLON-ALIGNED WIDGET-ID 10
  80. VIEW-AS FILL-IN NATIVE
  81. SIZE 4 BY 1
  82. BGCOLOR 15 NO-TAB-STOP
  83. RowObject.CodeC AT ROW 2 COL 48 COLON-ALIGNED WIDGET-ID 4
  84. VIEW-AS FILL-IN NATIVE
  85. SIZE 4 BY 1
  86. BGCOLOR 15 NO-TAB-STOP
  87. RowObject.Sprcd AT ROW 2 COL 48 COLON-ALIGNED WIDGET-ID 12
  88. VIEW-AS FILL-IN NATIVE
  89. SIZE 4 BY 1
  90. BGCOLOR 15 NO-TAB-STOP
  91. RowObject.Bez1 AT ROW 2.52 COL 13 COLON-ALIGNED WIDGET-ID 2
  92. LABEL "Verband"
  93. VIEW-AS FILL-IN NATIVE
  94. SIZE 40 BY 1
  95. BGCOLOR 15
  96. RECT-2 AT ROW 1.24 COL 2 WIDGET-ID 14
  97. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS
  98. SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE
  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: SmartDataViewer
  104. Data Source: "d-verband.w"
  105. Allow: Basic,DB-Fields,Smart
  106. Container Links: Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  107. Frames: 1
  108. Add Fields to: Neither
  109. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER
  110. Temp-Tables and Buffers:
  111. TABLE: RowObject D "?" NO-UNDO
  112. ADDITIONAL-FIELDS:
  113. {d-verband.i}
  114. END-FIELDS.
  115. END-TABLES.
  116. */
  117. /* This procedure should always be RUN PERSISTENT. Report the error, */
  118. /* then cleanup and return. */
  119. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  120. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  121. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  122. RETURN.
  123. END.
  124. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  125. /* ************************* Create Window ************************** */
  126. &ANALYZE-SUSPEND _CREATE-WINDOW
  127. /* DESIGN Window definition (used by the UIB)
  128. CREATE WINDOW vTableWin ASSIGN
  129. HEIGHT = 3.19
  130. WIDTH = 81.8.
  131. /* END WINDOW DEFINITION */
  132. */
  133. &ANALYZE-RESUME
  134. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB vTableWin
  135. /* ************************* Included-Libraries *********************** */
  136. {src/adm2/viewer.i}
  137. /* _UIB-CODE-BLOCK-END */
  138. &ANALYZE-RESUME
  139. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  140. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  141. /* SETTINGS FOR WINDOW vTableWin
  142. VISIBLE,,RUN-PERSISTENT */
  143. /* SETTINGS FOR FRAME F-Main
  144. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  145. ASSIGN
  146. FRAME F-Main:SCROLLABLE = FALSE
  147. FRAME F-Main:HIDDEN = TRUE.
  148. /* SETTINGS FOR FILL-IN RowObject.Bez1 IN FRAME F-Main
  149. EXP-LABEL */
  150. /* SETTINGS FOR FILL-IN RowObject.CodeC IN FRAME F-Main
  151. NO-ENABLE */
  152. ASSIGN
  153. RowObject.CodeC:HIDDEN IN FRAME F-Main = TRUE
  154. RowObject.CodeC:READ-ONLY IN FRAME F-Main = TRUE.
  155. /* SETTINGS FOR FILL-IN RowObject.CodeI IN FRAME F-Main
  156. EXP-LABEL */
  157. /* SETTINGS FOR FILL-IN RowObject.Firma IN FRAME F-Main
  158. NO-ENABLE */
  159. ASSIGN
  160. RowObject.Firma:HIDDEN IN FRAME F-Main = TRUE
  161. RowObject.Firma:READ-ONLY IN FRAME F-Main = TRUE.
  162. /* SETTINGS FOR FILL-IN RowObject.Recart IN FRAME F-Main
  163. NO-ENABLE */
  164. ASSIGN
  165. RowObject.Recart:HIDDEN IN FRAME F-Main = TRUE
  166. RowObject.Recart:READ-ONLY IN FRAME F-Main = TRUE.
  167. /* SETTINGS FOR FILL-IN RowObject.Sprcd IN FRAME F-Main
  168. NO-ENABLE */
  169. ASSIGN
  170. RowObject.Sprcd:HIDDEN IN FRAME F-Main = TRUE
  171. RowObject.Sprcd:READ-ONLY IN FRAME F-Main = TRUE.
  172. /* _RUN-TIME-ATTRIBUTES-END */
  173. &ANALYZE-RESUME
  174. /* Setting information for Queries and Browse Widgets fields */
  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. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK vTableWin
  182. /* *************************** Main Block *************************** */
  183. { incl/viwmainblock.i }
  184. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  185. RUN initializeObject.
  186. &ENDIF
  187. /************************ INTERNAL PROCEDURES ********************/
  188. /* _UIB-CODE-BLOCK-END */
  189. &ANALYZE-RESUME
  190. /* ********************** Internal Procedures *********************** */
  191. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE addRecord vTableWin
  192. PROCEDURE addRecord :
  193. /*------------------------------------------------------------------------------
  194. Purpose: Super Override
  195. Parameters:
  196. Notes:
  197. ------------------------------------------------------------------------------*/
  198. FNeu = TRUE.
  199. FMut = TRUE.
  200. FDisp = TRUE.
  201. RUN SUPER.
  202. /* Code placed here will execute AFTER standard behavior. */
  203. END PROCEDURE.
  204. /* _UIB-CODE-BLOCK-END */
  205. &ANALYZE-RESUME
  206. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE cancelRecord vTableWin
  207. PROCEDURE cancelRecord :
  208. /*------------------------------------------------------------------------------
  209. Purpose: Super Override
  210. Parameters:
  211. Notes:
  212. ------------------------------------------------------------------------------*/
  213. FCancel = TRUE.
  214. RUN SUPER.
  215. /* Code placed here will execute AFTER standard behavior. */
  216. END PROCEDURE.
  217. /* _UIB-CODE-BLOCK-END */
  218. &ANALYZE-RESUME
  219. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE copyRecord vTableWin
  220. PROCEDURE copyRecord :
  221. /*------------------------------------------------------------------------------
  222. Purpose: Super Override
  223. Parameters:
  224. Notes:
  225. ------------------------------------------------------------------------------*/
  226. FNeu = TRUE.
  227. FMut = TRUE.
  228. FCopy = TRUE.
  229. FDisp = TRUE.
  230. RUN SUPER.
  231. END PROCEDURE.
  232. /* _UIB-CODE-BLOCK-END */
  233. &ANALYZE-RESUME
  234. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE deleteRecord vTableWin
  235. PROCEDURE deleteRecord :
  236. /*------------------------------------------------------------------------------
  237. Purpose: Super Override
  238. Parameters:
  239. Notes:
  240. ------------------------------------------------------------------------------*/
  241. DEF VAR Ja AS LOG NO-UNDO.
  242. Ja = DYNAMIC-FUNCTION( 'ANTWORT_NEIN':U, INPUT 1000 ).
  243. IF NOT Ja THEN DO:
  244. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR.
  245. RETURN NO-APPLY.
  246. END.
  247. /* REPEAT TRANSACTION: */
  248. /* RUN INAKTIVIEREN IN hDaten. */
  249. /* LEAVE. */
  250. /* END. */
  251. /* */
  252. RUN SUPER.
  253. /* Code placed here will execute AFTER standard behavior. */
  254. END PROCEDURE.
  255. /* _UIB-CODE-BLOCK-END */
  256. &ANALYZE-RESUME
  257. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disableFields vTableWin
  258. PROCEDURE disableFields :
  259. /*------------------------------------------------------------------------------
  260. Purpose: Super Override
  261. Parameters:
  262. Notes:
  263. ------------------------------------------------------------------------------*/
  264. DEFINE INPUT PARAMETER pcFieldType AS CHARACTER NO-UNDO.
  265. DO WITH FRAME {&FRAME-NAME}:
  266. END.
  267. RUN SUPER( INPUT pcFieldType).
  268. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  269. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ).
  270. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO:
  271. RUN FARBE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT 15 ).
  272. END.
  273. DO WITH FRAME {&FRAME-NAME}:
  274. END.
  275. END PROCEDURE.
  276. /* _UIB-CODE-BLOCK-END */
  277. &ANALYZE-RESUME
  278. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI vTableWin _DEFAULT-DISABLE
  279. PROCEDURE disable_UI :
  280. /*------------------------------------------------------------------------------
  281. Purpose: DISABLE the User Interface
  282. Parameters: <none>
  283. Notes: Here we clean-up the user-interface by deleting
  284. dynamic widgets we have created and/or hide
  285. frames. This procedure is usually called when
  286. we are ready to "clean-up" after running.
  287. ------------------------------------------------------------------------------*/
  288. /* Hide all frames. */
  289. HIDE FRAME F-Main.
  290. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  291. END PROCEDURE.
  292. /* _UIB-CODE-BLOCK-END */
  293. &ANALYZE-RESUME
  294. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE displayFields vTableWin
  295. PROCEDURE displayFields :
  296. /*------------------------------------------------------------------------------
  297. Purpose: Super Override
  298. Parameters:
  299. Notes:
  300. ------------------------------------------------------------------------------*/
  301. DEFINE INPUT PARAMETER pcColValues AS CHARACTER NO-UNDO.
  302. IF NOT FDisp THEN DO:
  303. FDisp = TRUE.
  304. RETURN.
  305. END.
  306. IF FCancel THEN pcColValues = OldColValues.
  307. IF NOT FNeu THEN OldColValues = pcColValues.
  308. OldColList = DYNAMIC-FUNCTION('getDisplayedFields':U).
  309. IF FNeu THEN RUN FEHLWERTE ( INPUT-OUTPUT pcColValues ).
  310. DO WITH FRAME {&FRAME-NAME}:
  311. END.
  312. RUN SUPER( INPUT pcColValues).
  313. FCancel = FALSE.
  314. DO WITH FRAME {&FRAME-NAME}:
  315. END.
  316. END PROCEDURE.
  317. /* _UIB-CODE-BLOCK-END */
  318. &ANALYZE-RESUME
  319. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableFields vTableWin
  320. PROCEDURE enableFields :
  321. /*------------------------------------------------------------------------------
  322. Purpose: Super Override
  323. Parameters:
  324. Notes:
  325. ------------------------------------------------------------------------------*/
  326. /* Code placed here will execute PRIOR to standard behavior. */
  327. /*
  328. RUN SUPER.
  329. */
  330. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  331. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT FALSE ).
  332. IF NUM-ENTRIES('{&NUR_LESEN}', ',') > 0 THEN DO:
  333. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&NUR_LESEN}', INPUT TRUE ).
  334. END.
  335. DO WITH FRAME {&FRAME-NAME}:
  336. END.
  337. IF FNeu THEN RETURN.
  338. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO:
  339. RUN SCHUETZE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT TRUE ).
  340. END.
  341. END PROCEDURE.
  342. /* _UIB-CODE-BLOCK-END */
  343. &ANALYZE-RESUME
  344. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject vTableWin
  345. PROCEDURE enableObject :
  346. /*------------------------------------------------------------------------------
  347. Purpose: Super Override
  348. Parameters:
  349. Notes:
  350. ------------------------------------------------------------------------------*/
  351. /* Code placed here will execute PRIOR to standard behavior. */
  352. RUN SUPER.
  353. { incl/viwenableobject.i }
  354. END PROCEDURE.
  355. /* _UIB-CODE-BLOCK-END */
  356. &ANALYZE-RESUME
  357. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_FELD_TEST vTableWin
  358. PROCEDURE ENTRY_FELD_TEST :
  359. /*------------------------------------------------------------------------------
  360. Purpose:
  361. Parameters: <none>
  362. Notes:
  363. ------------------------------------------------------------------------------*/
  364. { incl/viwentryfeldtest.i }
  365. DO WITH FRAME {&FRAME-NAME}:
  366. CASE FeldName:
  367. END CASE.
  368. END.
  369. RETURN ''.
  370. END PROCEDURE.
  371. /* _UIB-CODE-BLOCK-END */
  372. &ANALYZE-RESUME
  373. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FEHLWERTE vTableWin
  374. PROCEDURE FEHLWERTE :
  375. /*------------------------------------------------------------------------------
  376. Purpose:
  377. Parameters: <none>
  378. Notes:
  379. ------------------------------------------------------------------------------*/
  380. DEF INPUT-OUTPUT PARAMETER pcColValues AS CHAR NO-UNDO.
  381. DEF VAR i1 AS INT NO-UNDO.
  382. IF FCancel THEN RETURN.
  383. IF NOT FCopy THEN DO WITH FRAME {&FRAME-NAME}:
  384. i1 = LOOKUP('Firma', oldColList, ',') + 1.
  385. ENTRY(i1, pcColValues, CHR(1)) = Firma NO-ERROR.
  386. i1 = LOOKUP('RecArt', oldColList, ',') + 1.
  387. ENTRY(i1, pcColValues, CHR(1)) = cRecArt NO-ERROR.
  388. i1 = LOOKUP('Sprcd', oldColList, ',') + 1.
  389. ENTRY(i1, pcColValues, CHR(1)) = STRING(1) NO-ERROR.
  390. i1 = LOOKUP('CodeC', oldColList, ',') + 1.
  391. ENTRY(i1, pcColValues, CHR(1)) = '' NO-ERROR.
  392. END.
  393. IF FCopy THEN DO:
  394. END.
  395. END PROCEDURE.
  396. /* _UIB-CODE-BLOCK-END */
  397. &ANALYZE-RESUME
  398. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEAVE_FELD_TEST vTableWin
  399. PROCEDURE LEAVE_FELD_TEST :
  400. /*------------------------------------------------------------------------------
  401. Purpose:
  402. Parameters: <none>
  403. Notes:
  404. ------------------------------------------------------------------------------*/
  405. { incl/viwleavefeldtest.i }
  406. DO WHILE FNeu WITH FRAME {&FRAME-NAME}:
  407. CASE FeldName:
  408. WHEN 'CodeI' THEN DO:
  409. IF CAN-FIND ( FIRST Tabel USE-INDEX Tabel-k2
  410. WHERE Tabel.Firma = Firma
  411. AND Tabel.RecArt = cRecArt
  412. AND Tabel.CodeI = INTEGER(FeldInhalt)
  413. AND Tabel.CodeC = rowObject.CodeC:SCREEN-VALUE
  414. AND Tabel.Sprcd = 1 NO-LOCK)
  415. THEN DO:
  416. DYNAMIC-FUNCTION('fehlerMeldung':U, 1099, '' ).
  417. RETURN 'ERROR'.
  418. END.
  419. END.
  420. END CASE.
  421. LEAVE.
  422. END.
  423. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  424. CASE FeldName:
  425. END CASE.
  426. LEAVE.
  427. END.
  428. IF LOOKUP(FeldName, '{&LETZTES_FELD}', ',') > 0 THEN DO:
  429. DO WHILE TRUE:
  430. IF KEYFUNCTION(LKY) = 'TAB' THEN LEAVE.
  431. IF KEYFUNCTION(LKY) = 'RETURN' THEN LEAVE.
  432. IF KEYFUNCTION(LKY) = 'F9' THEN LEAVE.
  433. RETURN ''.
  434. END.
  435. APPLY 'ALT-S'.
  436. RETURN 'APPLY'.
  437. END.
  438. RETURN ''.
  439. END PROCEDURE.
  440. /* _UIB-CODE-BLOCK-END */
  441. &ANALYZE-RESUME
  442. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE RETURN_FELD vTableWin
  443. PROCEDURE RETURN_FELD :
  444. /*------------------------------------------------------------------------------
  445. Purpose:
  446. Parameters: <none>
  447. Notes:
  448. ------------------------------------------------------------------------------*/
  449. { incl/viwreturnfeld.i }
  450. END PROCEDURE.
  451. /* _UIB-CODE-BLOCK-END */
  452. &ANALYZE-RESUME
  453. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TEST_EINGABEN vTableWin
  454. PROCEDURE TEST_EINGABEN :
  455. /*------------------------------------------------------------------------------
  456. Purpose:
  457. Parameters: <none>
  458. Notes:
  459. ------------------------------------------------------------------------------*/
  460. DEF OUTPUT PARAMETER opJa AS LOG NO-UNDO.
  461. DEF VAR eHandle AS HANDLE NO-UNDO.
  462. DEF VAR cString AS CHAR NO-UNDO.
  463. DEF VAR iNummer AS INT NO-UNDO.
  464. opJa = FALSE.
  465. eHandle = ?.
  466. IF NOT FMut THEN RETURN.
  467. AAA000:
  468. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  469. IF FNeu THEN DO:
  470. IF CAN-FIND ( FIRST Tabel USE-INDEX Tabel-k2
  471. WHERE Tabel.Firma = Firma
  472. AND Tabel.RecArt = cRecArt
  473. AND Tabel.CodeI = INTEGER(rowObject.CodeI:SCREEN-VALUE)
  474. AND Tabel.CodeC = rowObject.CodeC:SCREEN-VALUE
  475. AND Tabel.Sprcd = 1 NO-LOCK)
  476. THEN DO:
  477. DYNAMIC-FUNCTION('fehlerMeldung':U, 1099, '' ).
  478. eHandle = rowObject.CodeI:HANDLE.
  479. END.
  480. END.
  481. LEAVE.
  482. END.
  483. IF VALID-HANDLE(eHandle) THEN DO:
  484. APPLY 'ENTRY' TO eHandle.
  485. RETURN NO-APPLY.
  486. END.
  487. opJa = TRUE.
  488. END PROCEDURE.
  489. /* _UIB-CODE-BLOCK-END */
  490. &ANALYZE-RESUME
  491. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateMode vTableWin
  492. PROCEDURE updateMode :
  493. /*------------------------------------------------------------------------------
  494. Purpose: Super Override
  495. Parameters:
  496. Notes:
  497. ------------------------------------------------------------------------------*/
  498. DEFINE INPUT PARAMETER pcMode AS CHARACTER NO-UNDO.
  499. CASE pcMode:
  500. WHEN 'updateBegin' THEN DO:
  501. END.
  502. WHEN 'updateEnd' THEN DO:
  503. END.
  504. END.
  505. RUN SUPER( INPUT pcMode).
  506. CASE pcMode:
  507. WHEN 'updateBegin' THEN DO:
  508. FMut = TRUE.
  509. END.
  510. WHEN 'updateEnd' THEN DO:
  511. FNeu = FALSE.
  512. FMut = FALSE.
  513. FCopy = FALSE.
  514. END.
  515. END.
  516. END PROCEDURE.
  517. /* _UIB-CODE-BLOCK-END */
  518. &ANALYZE-RESUME
  519. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateRecord vTableWin
  520. PROCEDURE updateRecord :
  521. /*------------------------------------------------------------------------------
  522. Purpose: Super Override
  523. Parameters:
  524. Notes:
  525. ------------------------------------------------------------------------------*/
  526. DO WITH FRAME {&FRAME-NAME}:
  527. IF FNeu THEN DO:
  528. DYNAMIC-FUNCTION('SETMODIFIEDFLAG':U, INPUT Fenster, INPUT TRUE).
  529. END.
  530. END.
  531. FNeu = FALSE.
  532. FCopy = FALSE.
  533. RUN SUPER.
  534. /* Code placed here will execute AFTER standard behavior. */
  535. END PROCEDURE.
  536. /* _UIB-CODE-BLOCK-END */
  537. &ANALYZE-RESUME