v-kgebinde.w 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898
  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. /* Temp-Table and Buffer definitions */
  8. DEFINE TEMP-TABLE RowObject
  9. {"d-kgebinde.i"}.
  10. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS vTableWin
  11. /*------------------------------------------------------------------------
  12. File:
  13. Description: from viewer.w - Template for SmartDataViewer objects
  14. Input Parameters:
  15. <none>
  16. Output Parameters:
  17. <none>
  18. ------------------------------------------------------------------------*/
  19. /* This .W file was created with the Progress AppBuilder. */
  20. /*----------------------------------------------------------------------*/
  21. /* Create an unnamed pool to store all the widgets created
  22. by this procedure. This is a good default which assures
  23. that this procedure's triggers and internal procedures
  24. will execute in this procedure's storage, and that proper
  25. cleanup will occur on deletion of the procedure. */
  26. CREATE WIDGET-POOL.
  27. /* *************************** Definitions ************************** */
  28. /* Komma-Trennzeichen */
  29. /* Keyfelder werden beim Mutieren nicht "Enabled" */
  30. &Scoped-define ERSTES_FELD Geb_Cd
  31. &Scoped-define LETZTES_FELD eShop_pic
  32. &Scoped-define KEY_FELDER Geb_Cd
  33. &Scoped-define NUR_LESEN
  34. /* Parameters Definitions --- */
  35. /* Local Variable Definitions --- */
  36. DEF VAR SAktiv AS LOG NO-UNDO INIT FALSE.
  37. DEF VAR FNeu AS LOG NO-UNDO INIT FALSE.
  38. DEF VAR FMut AS LOG NO-UNDO INIT FALSE.
  39. DEF VAR FCopy AS LOG NO-UNDO INIT FALSE.
  40. DEF VAR Fenster AS HANDLE NO-UNDO.
  41. DEF VAR oldColValues AS CHAR NO-UNDO.
  42. DEF VAR oldColList AS CHAR NO-UNDO.
  43. DEF VAR Firma AS CHAR NO-UNDO.
  44. /* _UIB-CODE-BLOCK-END */
  45. &ANALYZE-RESUME
  46. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  47. /* ******************** Preprocessor Definitions ******************** */
  48. &Scoped-define PROCEDURE-TYPE SmartDataViewer
  49. &Scoped-define DB-AWARE no
  50. &Scoped-define ADM-CONTAINER FRAME
  51. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  52. /* Include file with RowObject temp-table definition */
  53. &Scoped-define DATA-FIELD-DEFS "d-kgebinde.i"
  54. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  55. &Scoped-define FRAME-NAME F-Main
  56. /* Standard List Definitions */
  57. &Scoped-Define ENABLED-FIELDS RowObject.Geb_Cd RowObject.KBez RowObject.Bez ~
  58. RowObject.Depot RowObject.Gebuehr RowObject.Inhalt RowObject.Gewicht ~
  59. RowObject.eShop_Bez RowObject.eShop_pic RowObject.DD_Code
  60. &Scoped-define ENABLED-TABLES RowObject
  61. &Scoped-define FIRST-ENABLED-TABLE RowObject
  62. &Scoped-Define ENABLED-OBJECTS CB_MWST_Art CB_MWST CB_Konto RECT-4
  63. &Scoped-Define DISPLAYED-FIELDS RowObject.Geb_Cd RowObject.KBez ~
  64. RowObject.Bez RowObject.Depot RowObject.Gebuehr RowObject.Inhalt ~
  65. RowObject.Gewicht RowObject.Firma RowObject.eShop_Bez RowObject.eShop_pic ~
  66. RowObject.Geb_Kto RowObject.Saldo RowObject.MWSt_Cd RowObject.MWST_Art ~
  67. RowObject.DD_Code
  68. &Scoped-define DISPLAYED-TABLES RowObject
  69. &Scoped-define FIRST-DISPLAYED-TABLE RowObject
  70. &Scoped-Define DISPLAYED-OBJECTS CB_MWST_Art CB_MWST CB_Konto
  71. /* Custom List Definitions */
  72. /* ADM-ASSIGN-FIELDS,List-2,List-3,List-4,List-5,List-6 */
  73. /* _UIB-PREPROCESSOR-BLOCK-END */
  74. &ANALYZE-RESUME
  75. /* *********************** Control Definitions ********************** */
  76. /* Definitions of the field level widgets */
  77. DEFINE VARIABLE CB_Konto AS CHARACTER
  78. LABEL "Gebindekonto"
  79. VIEW-AS COMBO-BOX INNER-LINES 5
  80. LIST-ITEM-PAIRS "Item 1","Item 1"
  81. DROP-DOWN
  82. SIZE 25 BY 1
  83. BGCOLOR 15 DROP-TARGET NO-UNDO.
  84. DEFINE VARIABLE CB_MWST AS CHARACTER
  85. LABEL "MWSt-Code"
  86. VIEW-AS COMBO-BOX INNER-LINES 5
  87. LIST-ITEM-PAIRS "Item 1","Item 1"
  88. DROP-DOWN
  89. SIZE 25 BY 1
  90. BGCOLOR 15 DROP-TARGET NO-UNDO.
  91. DEFINE VARIABLE CB_MWST_Art AS CHARACTER
  92. LABEL "MWSt-Abrechnung"
  93. VIEW-AS COMBO-BOX INNER-LINES 5
  94. LIST-ITEM-PAIRS "Steuerfrei","0",
  95. "MWSt wie Artikel","1",
  96. "Fester Ansatz","2"
  97. DROP-DOWN
  98. SIZE 25 BY 1
  99. BGCOLOR 15 DROP-TARGET NO-UNDO.
  100. DEFINE RECTANGLE RECT-4
  101. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  102. SIZE 132 BY 8.1.
  103. /* ************************ Frame Definitions *********************** */
  104. DEFINE FRAME F-Main
  105. RowObject.Geb_Cd AT ROW 1.52 COL 8 COLON-ALIGNED
  106. LABEL "Code" FORMAT "x(08)"
  107. VIEW-AS FILL-IN NATIVE
  108. SIZE 14 BY 1
  109. BGCOLOR 15
  110. RowObject.KBez AT ROW 1.52 COL 33 COLON-ALIGNED
  111. LABEL "Kurzbez." FORMAT "X(10)"
  112. VIEW-AS FILL-IN NATIVE
  113. SIZE 20 BY 1
  114. BGCOLOR 15
  115. RowObject.Bez AT ROW 1.52 COL 68 COLON-ALIGNED
  116. LABEL "Bezeichnung" FORMAT "x(20)"
  117. VIEW-AS FILL-IN NATIVE
  118. SIZE 30 BY 1
  119. BGCOLOR 15
  120. RowObject.Depot AT ROW 2.52 COL 33 COLON-ALIGNED
  121. LABEL "Depot"
  122. VIEW-AS FILL-IN NATIVE
  123. SIZE 13 BY 1
  124. BGCOLOR 15
  125. RowObject.Gebuehr AT ROW 2.52 COL 68 COLON-ALIGNED
  126. LABEL "Gebuehr"
  127. VIEW-AS FILL-IN NATIVE
  128. SIZE 13 BY 1
  129. BGCOLOR 15
  130. RowObject.Inhalt AT ROW 3.52 COL 33 COLON-ALIGNED
  131. LABEL "Inhalt (cl)" FORMAT "zzz,zz9"
  132. VIEW-AS FILL-IN NATIVE
  133. SIZE 13 BY 1
  134. BGCOLOR 15
  135. RowObject.Gewicht AT ROW 3.52 COL 68 COLON-ALIGNED
  136. LABEL "Gewicht" FORMAT "zz9.999"
  137. VIEW-AS FILL-IN NATIVE
  138. SIZE 13 BY 1
  139. BGCOLOR 15
  140. CB_MWST_Art AT ROW 5.52 COL 33 COLON-ALIGNED
  141. CB_MWST AT ROW 6.52 COL 33 COLON-ALIGNED
  142. RowObject.Firma AT ROW 2.91 COL 116 COLON-ALIGNED
  143. VIEW-AS FILL-IN
  144. SIZE 4 BY 1 NO-TAB-STOP
  145. CB_Konto AT ROW 7.52 COL 33 COLON-ALIGNED
  146. RowObject.eShop_Bez AT ROW 6.52 COL 76 COLON-ALIGNED
  147. LABEL "Bez eShop"
  148. VIEW-AS FILL-IN NATIVE
  149. SIZE 22 BY 1
  150. BGCOLOR 15
  151. RowObject.eShop_pic AT ROW 7.52 COL 76 COLON-ALIGNED
  152. LABEL "Bild eShop"
  153. VIEW-AS FILL-IN NATIVE
  154. SIZE 13.6 BY 1
  155. BGCOLOR 15
  156. RowObject.Geb_Kto AT ROW 2.91 COL 116 COLON-ALIGNED
  157. LABEL "Geb_Kto" FORMAT "X(8)"
  158. VIEW-AS FILL-IN
  159. SIZE 4 BY 1 NO-TAB-STOP
  160. RowObject.Saldo AT ROW 2.91 COL 116 COLON-ALIGNED
  161. VIEW-AS FILL-IN
  162. SIZE 4 BY 1 NO-TAB-STOP
  163. RowObject.MWSt_Cd AT ROW 2.91 COL 116 COLON-ALIGNED
  164. LABEL "MWSt_Cd" FORMAT "999999"
  165. VIEW-AS FILL-IN
  166. SIZE 4 BY 1 NO-TAB-STOP
  167. RowObject.MWST_Art AT ROW 2.91 COL 116 COLON-ALIGNED
  168. LABEL "MWST_Art" FORMAT "9"
  169. VIEW-AS FILL-IN
  170. SIZE 4 BY 1 TOOLTIP "0=STeuerfrei, 1 = wie Artikel, 2 = Fester Ansatz" NO-TAB-STOP
  171. RowObject.DD_Code AT ROW 4.52 COL 33 COLON-ALIGNED WIDGET-ID 2
  172. VIEW-AS FILL-IN NATIVE
  173. SIZE 60 BY 1
  174. BGCOLOR 15
  175. RECT-4 AT ROW 1.24 COL 2
  176. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS
  177. SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE
  178. AT COL 1 ROW 1 SCROLLABLE .
  179. /* *********************** Procedure Settings ************************ */
  180. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  181. /* Settings for THIS-PROCEDURE
  182. Type: SmartDataViewer
  183. Data Source: "d-kgebinde.w"
  184. Allow: Basic,DB-Fields,Smart
  185. Container Links: Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  186. Frames: 1
  187. Add Fields to: Neither
  188. Other Settings: PERSISTENT-ONLY COMPILE
  189. Temp-Tables and Buffers:
  190. TABLE: RowObject D "?" ?
  191. ADDITIONAL-FIELDS:
  192. {d-kgebinde.i}
  193. END-FIELDS.
  194. END-TABLES.
  195. */
  196. /* This procedure should always be RUN PERSISTENT. Report the error, */
  197. /* then cleanup and return. */
  198. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  199. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  200. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  201. RETURN.
  202. END.
  203. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  204. /* ************************* Create Window ************************** */
  205. &ANALYZE-SUSPEND _CREATE-WINDOW
  206. /* DESIGN Window definition (used by the UIB)
  207. CREATE WINDOW vTableWin ASSIGN
  208. HEIGHT = 8.57
  209. WIDTH = 134.
  210. /* END WINDOW DEFINITION */
  211. */
  212. &ANALYZE-RESUME
  213. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB vTableWin
  214. /* ************************* Included-Libraries *********************** */
  215. {src/adm2/viewer.i}
  216. /* _UIB-CODE-BLOCK-END */
  217. &ANALYZE-RESUME
  218. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  219. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  220. /* SETTINGS FOR WINDOW vTableWin
  221. VISIBLE,,RUN-PERSISTENT */
  222. /* SETTINGS FOR FRAME F-Main
  223. NOT-VISIBLE FRAME-NAME Size-to-Fit Custom */
  224. ASSIGN
  225. FRAME F-Main:SCROLLABLE = FALSE
  226. FRAME F-Main:HIDDEN = TRUE.
  227. /* SETTINGS FOR FILL-IN RowObject.Bez IN FRAME F-Main
  228. EXP-LABEL EXP-FORMAT */
  229. /* SETTINGS FOR FILL-IN RowObject.Depot IN FRAME F-Main
  230. EXP-LABEL */
  231. /* SETTINGS FOR FILL-IN RowObject.eShop_Bez IN FRAME F-Main
  232. EXP-LABEL */
  233. /* SETTINGS FOR FILL-IN RowObject.eShop_pic IN FRAME F-Main
  234. EXP-LABEL */
  235. /* SETTINGS FOR FILL-IN RowObject.Firma IN FRAME F-Main
  236. NO-ENABLE */
  237. ASSIGN
  238. RowObject.Firma:HIDDEN IN FRAME F-Main = TRUE
  239. RowObject.Firma:READ-ONLY IN FRAME F-Main = TRUE.
  240. /* SETTINGS FOR FILL-IN RowObject.Gebuehr IN FRAME F-Main
  241. EXP-LABEL */
  242. /* SETTINGS FOR FILL-IN RowObject.Geb_Cd IN FRAME F-Main
  243. EXP-LABEL EXP-FORMAT */
  244. /* SETTINGS FOR FILL-IN RowObject.Geb_Kto IN FRAME F-Main
  245. NO-ENABLE EXP-LABEL EXP-FORMAT */
  246. ASSIGN
  247. RowObject.Geb_Kto:HIDDEN IN FRAME F-Main = TRUE
  248. RowObject.Geb_Kto:READ-ONLY IN FRAME F-Main = TRUE.
  249. /* SETTINGS FOR FILL-IN RowObject.Gewicht IN FRAME F-Main
  250. EXP-LABEL EXP-FORMAT */
  251. /* SETTINGS FOR FILL-IN RowObject.Inhalt IN FRAME F-Main
  252. EXP-LABEL EXP-FORMAT */
  253. /* SETTINGS FOR FILL-IN RowObject.KBez IN FRAME F-Main
  254. EXP-LABEL EXP-FORMAT */
  255. /* SETTINGS FOR FILL-IN RowObject.MWST_Art IN FRAME F-Main
  256. NO-ENABLE EXP-LABEL EXP-FORMAT */
  257. ASSIGN
  258. RowObject.MWST_Art:HIDDEN IN FRAME F-Main = TRUE
  259. RowObject.MWST_Art:READ-ONLY IN FRAME F-Main = TRUE.
  260. /* SETTINGS FOR FILL-IN RowObject.MWSt_Cd IN FRAME F-Main
  261. NO-ENABLE EXP-LABEL EXP-FORMAT */
  262. ASSIGN
  263. RowObject.MWSt_Cd:HIDDEN IN FRAME F-Main = TRUE
  264. RowObject.MWSt_Cd:READ-ONLY IN FRAME F-Main = TRUE.
  265. /* SETTINGS FOR FILL-IN RowObject.Saldo IN FRAME F-Main
  266. NO-ENABLE */
  267. ASSIGN
  268. RowObject.Saldo:HIDDEN IN FRAME F-Main = TRUE
  269. RowObject.Saldo:READ-ONLY IN FRAME F-Main = TRUE.
  270. /* _RUN-TIME-ATTRIBUTES-END */
  271. &ANALYZE-RESUME
  272. /* Setting information for Queries and Browse Widgets fields */
  273. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  274. /* Query rebuild information for FRAME F-Main
  275. _Options = "NO-LOCK"
  276. _Query is NOT OPENED
  277. */ /* FRAME F-Main */
  278. &ANALYZE-RESUME
  279. /* ************************ Control Triggers ************************ */
  280. &Scoped-define SELF-NAME CB_Konto
  281. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Konto vTableWin
  282. ON VALUE-CHANGED OF CB_Konto IN FRAME F-Main /* Gebindekonto */
  283. DO:
  284. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Geb_Kto:SCREEN-VALUE.
  285. rowObject.Geb_Kto:SCREEN-VALUE = SELF:SCREEN-VALUE.
  286. END.
  287. /* _UIB-CODE-BLOCK-END */
  288. &ANALYZE-RESUME
  289. &Scoped-define SELF-NAME CB_MWST
  290. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_MWST vTableWin
  291. ON VALUE-CHANGED OF CB_MWST IN FRAME F-Main /* MWSt-Code */
  292. DO:
  293. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.MWST_Cd:SCREEN-VALUE.
  294. IF INTEGER(CB_MWST_Art:SCREEN-VALUE) <> 2 THEN SELF:SCREEN-VALUE = rowObject.MWST_Cd:SCREEN-VALUE.
  295. rowObject.MWST_Cd:SCREEN-VALUE = SELF:SCREEN-VALUE.
  296. END.
  297. /* _UIB-CODE-BLOCK-END */
  298. &ANALYZE-RESUME
  299. &Scoped-define SELF-NAME CB_MWST_Art
  300. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_MWST_Art vTableWin
  301. ON VALUE-CHANGED OF CB_MWST_Art IN FRAME F-Main /* MWSt-Abrechnung */
  302. DO:
  303. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.MWST_Art:SCREEN-VALUE.
  304. rowObject.MWST_Art:SCREEN-VALUE = SELF:SCREEN-VALUE.
  305. IF integer(SELF:SCREEN-VALUE) <> 2 THEN DO:
  306. rowObject.MWST_Cd:SCREEN-VALUE = '000000'.
  307. CB_MWST:SCREEN-VALUE = rowObject.MWST_Cd:SCREEN-VALUE.
  308. END.
  309. END.
  310. /* _UIB-CODE-BLOCK-END */
  311. &ANALYZE-RESUME
  312. &UNDEFINE SELF-NAME
  313. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK vTableWin
  314. /* *************************** Main Block *************************** */
  315. SAktiv = DYNAMIC-FUNCTION('getSuperAktiv':U) NO-ERROR.
  316. IF SAktiv THEN DO:
  317. Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR.
  318. END.
  319. /* Triggers ------------------------------------------------------ */
  320. ON 'RETURN':U OF FRAME {&FRAME-NAME} ANYWHERE
  321. DO:
  322. RUN RETURN_FELD ( INPUT SELF:HANDLE ).
  323. IF RETURN-VALUE = 'TAB' THEN DO:
  324. APPLY 'TAB' TO SELF.
  325. RETURN NO-APPLY.
  326. END.
  327. END.
  328. ON 'ENTRY':U OF FRAME {&FRAME-NAME} ANYWHERE
  329. DO:
  330. RUN ENTRY_FELD_TEST ( INPUT SELF:HANDLE ).
  331. IF RETURN-VALUE = 'ERROR' THEN DO:
  332. APPLY 'ENTRY' TO SELF.
  333. RETURN NO-APPLY.
  334. END.
  335. IF RETURN-VALUE = 'APPLY' THEN DO:
  336. RETURN NO-APPLY.
  337. END.
  338. END.
  339. ON 'LEAVE':U OF FRAME {&FRAME-NAME} ANYWHERE
  340. DO:
  341. RUN LEAVE_FELD_TEST ( INPUT SELF:HANDLE ).
  342. IF RETURN-VALUE = 'ERROR' THEN DO:
  343. APPLY 'ENTRY' TO SELF.
  344. RETURN NO-APPLY.
  345. END.
  346. IF RETURN-VALUE = 'APPLY' THEN DO:
  347. RETURN NO-APPLY.
  348. END.
  349. END.
  350. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  351. RUN initializeObject.
  352. &ENDIF
  353. /************************ INTERNAL PROCEDURES ********************/
  354. /* _UIB-CODE-BLOCK-END */
  355. &ANALYZE-RESUME
  356. /* ********************** Internal Procedures *********************** */
  357. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE addRecord vTableWin
  358. PROCEDURE addRecord :
  359. /*------------------------------------------------------------------------------
  360. Purpose: Super Override
  361. Parameters:
  362. Notes:
  363. ------------------------------------------------------------------------------*/
  364. FNeu = TRUE.
  365. FMut = TRUE.
  366. RUN SUPER.
  367. END PROCEDURE.
  368. /* _UIB-CODE-BLOCK-END */
  369. &ANALYZE-RESUME
  370. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE cancelRecord vTableWin
  371. PROCEDURE cancelRecord :
  372. /*------------------------------------------------------------------------------
  373. Purpose: Super Override
  374. Parameters:
  375. Notes:
  376. ------------------------------------------------------------------------------*/
  377. /* Code placed here will execute PRIOR to standard behavior. */
  378. RUN SUPER.
  379. /* Code placed here will execute AFTER standard behavior. */
  380. END PROCEDURE.
  381. /* _UIB-CODE-BLOCK-END */
  382. &ANALYZE-RESUME
  383. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE copyRecord vTableWin
  384. PROCEDURE copyRecord :
  385. /*------------------------------------------------------------------------------
  386. Purpose: Super Override
  387. Parameters:
  388. Notes:
  389. ------------------------------------------------------------------------------*/
  390. FNeu = TRUE.
  391. FMut = TRUE.
  392. FCopy = TRUE.
  393. RUN SUPER.
  394. END PROCEDURE.
  395. /* _UIB-CODE-BLOCK-END */
  396. &ANALYZE-RESUME
  397. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE deleteRecord vTableWin
  398. PROCEDURE deleteRecord :
  399. /*------------------------------------------------------------------------------
  400. Purpose: Super Override
  401. Parameters:
  402. Notes:
  403. ------------------------------------------------------------------------------*/
  404. DEF VAR Ja AS LOG NO-UNDO.
  405. Ja = DYNAMIC-FUNCTION( 'ANTWORT_JA':U, INPUT 1000 ).
  406. IF NOT Ja THEN DO:
  407. PUBLISH 'TOOLBAR' ( INPUT 'CANCEL':U ).
  408. RETURN NO-APPLY.
  409. END.
  410. RUN SUPER.
  411. /* Code placed here will execute AFTER standard behavior. */
  412. END PROCEDURE.
  413. /* _UIB-CODE-BLOCK-END */
  414. &ANALYZE-RESUME
  415. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disableFields vTableWin
  416. PROCEDURE disableFields :
  417. /*------------------------------------------------------------------------------
  418. Purpose: Super Override
  419. Parameters:
  420. Notes:
  421. ------------------------------------------------------------------------------*/
  422. DEFINE INPUT PARAMETER pcFieldType AS CHARACTER NO-UNDO.
  423. DO WITH FRAME {&FRAME-NAME}:
  424. END.
  425. RUN SUPER( INPUT pcFieldType).
  426. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  427. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ).
  428. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO:
  429. RUN FARBE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT 15 ).
  430. END.
  431. DO WITH FRAME {&FRAME-NAME}:
  432. END.
  433. END PROCEDURE.
  434. /* _UIB-CODE-BLOCK-END */
  435. &ANALYZE-RESUME
  436. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI vTableWin _DEFAULT-DISABLE
  437. PROCEDURE disable_UI :
  438. /*------------------------------------------------------------------------------
  439. Purpose: DISABLE the User Interface
  440. Parameters: <none>
  441. Notes: Here we clean-up the user-interface by deleting
  442. dynamic widgets we have created and/or hide
  443. frames. This procedure is usually called when
  444. we are ready to "clean-up" after running.
  445. ------------------------------------------------------------------------------*/
  446. /* Hide all frames. */
  447. HIDE FRAME F-Main.
  448. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  449. END PROCEDURE.
  450. /* _UIB-CODE-BLOCK-END */
  451. &ANALYZE-RESUME
  452. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE displayFields vTableWin
  453. PROCEDURE displayFields :
  454. /*------------------------------------------------------------------------------
  455. Purpose: Super Override
  456. Parameters:
  457. Notes:
  458. ------------------------------------------------------------------------------*/
  459. DEFINE INPUT PARAMETER pcColValues AS CHARACTER NO-UNDO.
  460. OldColValues = pcColValues.
  461. OldColList = DYNAMIC-FUNCTION('getDisplayedFields':U).
  462. IF FNeu THEN RUN FEHLWERTE ( INPUT-OUTPUT pcColValues ).
  463. DO WITH FRAME {&FRAME-NAME}:
  464. END.
  465. RUN SUPER( INPUT pcColValues).
  466. DO WITH FRAME {&FRAME-NAME}:
  467. CB_MWST:SCREEN-VALUE = rowObject.MWST_Cd:SCREEN-VALUE NO-ERROR.
  468. CB_MWST_Art:SCREEN-VALUE = rowObject.MWST_Art:SCREEN-VALUE NO-ERROR.
  469. CB_Konto:SCREEN-VALUE = rowObject.Geb_Kto:SCREEN-VALUE NO-ERROR.
  470. END.
  471. END PROCEDURE.
  472. /* _UIB-CODE-BLOCK-END */
  473. &ANALYZE-RESUME
  474. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableFields vTableWin
  475. PROCEDURE enableFields :
  476. /*------------------------------------------------------------------------------
  477. Purpose: Super Override
  478. Parameters:
  479. Notes:
  480. ------------------------------------------------------------------------------*/
  481. /* Code placed here will execute PRIOR to standard behavior. */
  482. /*
  483. RUN SUPER.
  484. */
  485. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  486. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT FALSE ).
  487. IF NUM-ENTRIES('{&NUR_LESEN}', ',') > 0 THEN DO:
  488. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&NUR_LESEN}', INPUT TRUE ).
  489. END.
  490. DO WITH FRAME {&FRAME-NAME}:
  491. END.
  492. IF FNeu THEN RETURN.
  493. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO:
  494. RUN SCHUETZE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT TRUE ).
  495. END.
  496. END PROCEDURE.
  497. /* _UIB-CODE-BLOCK-END */
  498. &ANALYZE-RESUME
  499. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject vTableWin
  500. PROCEDURE enableObject :
  501. /*------------------------------------------------------------------------------
  502. Purpose: Super Override
  503. Parameters:
  504. Notes:
  505. ------------------------------------------------------------------------------*/
  506. RUN SUPER.
  507. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  508. IF SAktiv THEN DO:
  509. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ).
  510. END.
  511. IF SAktiv THEN DO WITH FRAME {&FRAME-NAME}:
  512. RUN COMBO_MWSTARTIK ( INPUT CB_MWST:HANDLE ).
  513. RUN COMBO_GEBINDEKONTO ( INPUT CB_Konto:HANDLE ).
  514. END.
  515. END PROCEDURE.
  516. /* _UIB-CODE-BLOCK-END */
  517. &ANALYZE-RESUME
  518. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_FELD_TEST vTableWin
  519. PROCEDURE ENTRY_FELD_TEST :
  520. /*------------------------------------------------------------------------------
  521. Purpose:
  522. Parameters: <none>
  523. Notes:
  524. ------------------------------------------------------------------------------*/
  525. DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO.
  526. DEF VAR FeldName AS CHAR NO-UNDO.
  527. DEF VAR FeldInhalt AS CHAR NO-UNDO.
  528. FeldName = ''.
  529. FeldInhalt = ''.
  530. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''.
  531. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''.
  532. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''.
  533. FeldName = ipHandle:NAME.
  534. IF ipHandle:TYPE = 'FILL-IN' OR
  535. ipHandle:TYPE = 'COMBO-BOX' OR
  536. ipHandle:TYPE = 'TOGGLE-BOX' THEN FeldInhalt = ipHandle:SCREEN-VALUE.
  537. RETURN ''.
  538. END PROCEDURE.
  539. /* _UIB-CODE-BLOCK-END */
  540. &ANALYZE-RESUME
  541. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FEHLWERTE vTableWin
  542. PROCEDURE FEHLWERTE :
  543. /*------------------------------------------------------------------------------
  544. Purpose:
  545. Parameters: <none>
  546. Notes:
  547. ------------------------------------------------------------------------------*/
  548. DEF INPUT-OUTPUT PARAMETER pcColValues AS CHAR NO-UNDO.
  549. DEF VAR FwFelder AS CHAR NO-UNDO.
  550. DEF VAR FwFeld AS CHAR NO-UNDO.
  551. DEF VAR FwValue AS CHAR NO-UNDO.
  552. DEF VAR ix AS INT NO-UNDO.
  553. DEF VAR i1 AS INT NO-UNDO.
  554. GET-KEY-VALUE SECTION 'Fw???????' KEY ? VALUE FwFelder.
  555. IF NOT FCopy THEN DO:
  556. DO ix = 1 TO NUM-ENTRIES(FwFelder, ','):
  557. FwFeld = ENTRY (ix , FwFelder , ',').
  558. i1 = LOOKUP(FwFeld, oldColList, ',') + 1.
  559. IF i1 < 2 THEN NEXT.
  560. GET-KEY-VALUE SECTION 'Fw???????' KEY FwFeld VALUE FwValue.
  561. ENTRY(i1, pcColValues, CHR(1)) = FwValue NO-ERROR.
  562. END.
  563. i1 = LOOKUP('Firma', oldColList, ',') + 1.
  564. ENTRY(i1, pcColValues, CHR(1)) = Firma NO-ERROR.
  565. END.
  566. IF FCopy THEN DO:
  567. END.
  568. OldColValues = pcColValues.
  569. END PROCEDURE.
  570. /* _UIB-CODE-BLOCK-END */
  571. &ANALYZE-RESUME
  572. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEAVE_FELD_TEST vTableWin
  573. PROCEDURE LEAVE_FELD_TEST :
  574. /*------------------------------------------------------------------------------
  575. Purpose:
  576. Parameters: <none>
  577. Notes:
  578. ------------------------------------------------------------------------------*/
  579. DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO.
  580. DEF VAR FeldName AS CHAR NO-UNDO.
  581. DEF VAR FeldInhalt AS CHAR NO-UNDO.
  582. DEF VAR Daten AS CHAR NO-UNDO.
  583. DEF VAR ix AS INT NO-UNDO.
  584. DEF VAR LKY AS INT NO-UNDO.
  585. IF FMut = FALSE THEN RETURN ''.
  586. LKY = LASTKEY.
  587. FeldName = ''.
  588. FeldInhalt = ''.
  589. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''.
  590. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''.
  591. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''.
  592. FeldName = ipHandle:NAME.
  593. IF ipHandle:TYPE = 'FILL-IN' OR
  594. ipHandle:TYPE = 'COMBO-BOX' OR
  595. ipHandle:TYPE = 'TOGGLE-BOX' THEN FeldInhalt = ipHandle:SCREEN-VALUE.
  596. DO WHILE FNeu:
  597. CASE FeldName:
  598. WHEN 'Geb_Cd' THEN DO:
  599. RUN FIND_KGEBINDE ( INPUT FeldInhalt, OUTPUT Daten ).
  600. IF Daten <> '' THEN DO:
  601. RUN FEHLER ( INPUT 1023 ).
  602. RETURN 'ERROR'.
  603. END.
  604. END.
  605. END CASE.
  606. LEAVE.
  607. END.
  608. IF LOOKUP(FeldName, '{&LETZTES_FELD}', ',') > 0 THEN DO:
  609. DO WHILE TRUE:
  610. IF KEYFUNCTION(LKY) = 'RETURN' THEN LEAVE.
  611. IF KEYFUNCTION(LKY) = 'TAB' THEN LEAVE.
  612. IF KEYFUNCTION(LKY) = 'F9' THEN LEAVE.
  613. RETURN ''.
  614. END.
  615. APPLY 'ALT-S'.
  616. RETURN 'APPLY'.
  617. END.
  618. RETURN ''.
  619. END PROCEDURE.
  620. /* _UIB-CODE-BLOCK-END */
  621. &ANALYZE-RESUME
  622. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE RETURN_FELD vTableWin
  623. PROCEDURE RETURN_FELD :
  624. /*------------------------------------------------------------------------------
  625. Purpose:
  626. Parameters: <none>
  627. Notes:
  628. ------------------------------------------------------------------------------*/
  629. DEF INPUT PARAMETER ipHandle AS HANDLE NO-UNDO.
  630. DEF VAR FeldName AS CHAR NO-UNDO.
  631. IF FMut = FALSE THEN RETURN ''.
  632. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''.
  633. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''.
  634. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''.
  635. FeldName = ipHandle:NAME.
  636. IF LOOKUP(FeldName, '{&ENABLED-FIELDS}', ' ') > 0 THEN DO:
  637. RETURN 'TAB'.
  638. END.
  639. IF LOOKUP(FeldName, '{&ENABLED-OBJECTS}', ' ') > 0 THEN DO:
  640. RETURN 'TAB'.
  641. END.
  642. FeldName = 'rowObject.' + FeldName.
  643. IF LOOKUP(FeldName, '{&ENABLED-FIELDS}', ' ') > 0 THEN DO:
  644. RETURN 'TAB'.
  645. END.
  646. IF LOOKUP(FeldName, '{&ENABLED-OBJECTS}', ' ') > 0 THEN DO:
  647. RETURN 'TAB'.
  648. END.
  649. RETURN ''.
  650. END PROCEDURE.
  651. /* _UIB-CODE-BLOCK-END */
  652. &ANALYZE-RESUME
  653. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateMode vTableWin
  654. PROCEDURE updateMode :
  655. /*------------------------------------------------------------------------------
  656. Purpose: Super Override
  657. Parameters:
  658. Notes:
  659. ------------------------------------------------------------------------------*/
  660. DEFINE INPUT PARAMETER pcMode AS CHARACTER NO-UNDO.
  661. CASE pcMode:
  662. WHEN 'updateBegin' THEN DO:
  663. END.
  664. WHEN 'updateEnd' THEN DO:
  665. END.
  666. END.
  667. RUN SUPER( INPUT pcMode).
  668. CASE pcMode:
  669. WHEN 'updateBegin' THEN DO:
  670. FMut = TRUE.
  671. END.
  672. WHEN 'updateEnd' THEN DO:
  673. FNeu = FALSE.
  674. FMut = FALSE.
  675. FCopy = FALSE.
  676. END.
  677. END.
  678. END PROCEDURE.
  679. /* _UIB-CODE-BLOCK-END */
  680. &ANALYZE-RESUME
  681. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateRecord vTableWin
  682. PROCEDURE updateRecord :
  683. /*------------------------------------------------------------------------------
  684. Purpose: Super Override
  685. Parameters:
  686. Notes:
  687. ------------------------------------------------------------------------------*/
  688. DO WITH FRAME {&FRAME-NAME}:
  689. rowObject.Firma:SCREEN-VALUE = Firma.
  690. rowObject.MWST_Cd:SCREEN-VALUE = CB_MWST:SCREEN-VALUE.
  691. rowObject.MWST_Art:SCREEN-VALUE = CB_MWST_Art:SCREEN-VALUE.
  692. rowObject.Geb_Kto:SCREEN-VALUE = CB_Konto:SCREEN-VALUE.
  693. END.
  694. RUN SUPER.
  695. /* Code placed here will execute AFTER standard behavior. */
  696. END PROCEDURE.
  697. /* _UIB-CODE-BLOCK-END */
  698. &ANALYZE-RESUME