v-fehlwerte.w 25 KB

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