b-vesrzahl.w 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648
  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. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS bTableWin
  8. /*------------------------------------------------------------------------
  9. File: adm2\src\browser.w
  10. Description: SmartDataBrowser Object
  11. Input Parameters:
  12. <none>
  13. Output Parameters:
  14. <none>
  15. ------------------------------------------------------------------------*/
  16. /* This .W file was created with the Progress AppBuilder. */
  17. /*----------------------------------------------------------------------*/
  18. /* Create an unnamed pool to store all the widgets created
  19. by this procedure. This is a good default which assures
  20. that this procedure's triggers and internal procedures
  21. will execute in this procedure's storage, and that proper
  22. cleanup will occur on deletion of the procedure. */
  23. CREATE WIDGET-POOL.
  24. /* *************************** Definitions ************************** */
  25. /* Parameters Definitions --- */
  26. /* Local Variable Definitions --- */
  27. { incl/tmpbrowser.i }
  28. {src/adm2/widgetprto.i}
  29. /* _UIB-CODE-BLOCK-END */
  30. &ANALYZE-RESUME
  31. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  32. /* ******************** Preprocessor Definitions ******************** */
  33. &Scoped-define PROCEDURE-TYPE SmartDataBrowser
  34. &Scoped-define DB-AWARE no
  35. &Scoped-define ADM-SUPPORTED-LINKS TableIO-Target,Data-Target,Update-Source
  36. /* Include file with RowObject temp-table definition */
  37. &Scoped-define DATA-FIELD-DEFS "d-vesrzahl.i"
  38. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  39. &Scoped-define FRAME-NAME F-Main
  40. &Scoped-define BROWSE-NAME br_table
  41. /* Internal Tables (found by Frame, Query & Browse Queries) */
  42. &Scoped-define INTERNAL-TABLES rowObject
  43. /* Definitions for BROWSE br_table */
  44. &Scoped-define FIELDS-IN-QUERY-br_table Trnr Tr_Art Guts_Dat Kunde Faknr ~
  45. Betrag Taxen_01 Referenz Tn_Nr Aufg_Dat Verb_Dat Aufg_Ref Taxen_02 Rj_Cd ~
  46. Mi_Fi_Nr
  47. &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table
  48. &Scoped-define QUERY-STRING-br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION
  49. &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION.
  50. &Scoped-define TABLES-IN-QUERY-br_table rowObject
  51. &Scoped-define FIRST-TABLE-IN-QUERY-br_table rowObject
  52. /* Definitions for FRAME F-Main */
  53. /* Standard List Definitions */
  54. &Scoped-Define ENABLED-OBJECTS RECT-1 br_table
  55. /* Custom List Definitions */
  56. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  57. /* _UIB-PREPROCESSOR-BLOCK-END */
  58. &ANALYZE-RESUME
  59. /* ************************ Function Prototypes ********************** */
  60. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD setZeilenfarbe bTableWin
  61. FUNCTION setZeilenfarbe RETURNS LOGICAL
  62. ( ipFarbe AS INT ) FORWARD.
  63. /* _UIB-CODE-BLOCK-END */
  64. &ANALYZE-RESUME
  65. /* *********************** Control Definitions ********************** */
  66. /* Definitions of the field level widgets */
  67. DEFINE RECTANGLE RECT-1
  68. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  69. SIZE 166 BY 10.48.
  70. /* Query definitions */
  71. &ANALYZE-SUSPEND
  72. DEFINE TEMP-TABLE RowObject NO-UNDO
  73. {{&DATA-FIELD-DEFS}}
  74. {src/adm2/robjflds.i}.
  75. DEFINE QUERY br_table FOR
  76. rowObject SCROLLING.
  77. &ANALYZE-RESUME
  78. /* Browse definitions */
  79. DEFINE BROWSE br_table
  80. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS br_table bTableWin _STRUCTURED
  81. QUERY br_table NO-LOCK DISPLAY
  82. Trnr FORMAT "9999":U
  83. Tr_Art COLUMN-LABEL "Art" FORMAT "999":U
  84. Guts_Dat COLUMN-LABEL "Valuta" FORMAT "99.99.9999":U
  85. Kunde FORMAT "x(60)":U WIDTH 60
  86. Faknr FORMAT "x(07)":U
  87. Betrag FORMAT "zzz,zzz,zz9.99-":U
  88. Taxen_01 COLUMN-LABEL "Tax 1" FORMAT "zz9.99-":U WIDTH 7
  89. Referenz FORMAT "x(27)":U
  90. Tn_Nr COLUMN-LABEL "Teilnehmer-Nr" FORMAT "999999999":U WIDTH 21
  91. Aufg_Dat COLUMN-LABEL "Aufg.Dat" FORMAT "99.99.9999":U
  92. Verb_Dat COLUMN-LABEL "Verarb.Dat" FORMAT "99.99.9999":U
  93. Aufg_Ref COLUMN-LABEL "Aufg.Ref" FORMAT "x(10)":U
  94. Taxen_02 COLUMN-LABEL "Tax 2" FORMAT "zz9.99-":U WIDTH 7
  95. Rj_Cd COLUMN-LABEL "FeCd" FORMAT "x(01)":U
  96. Mi_Fi_Nr COLUMN-LABEL "Fiche" FORMAT "x(10)":U
  97. /* _UIB-CODE-BLOCK-END */
  98. &ANALYZE-RESUME
  99. WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 164 BY 10.
  100. /* ************************ Frame Definitions *********************** */
  101. DEFINE FRAME F-Main
  102. br_table AT ROW 1.48 COL 3 WIDGET-ID 200
  103. RECT-1 AT ROW 1.24 COL 2 WIDGET-ID 2
  104. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  105. SIDE-LABELS NO-UNDERLINE THREE-D
  106. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  107. /* *********************** Procedure Settings ************************ */
  108. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  109. /* Settings for THIS-PROCEDURE
  110. Type: SmartDataBrowser
  111. Data Source: "d-vesrzahl.w"
  112. Allow: Basic,Browse
  113. Frames: 1
  114. Add Fields to: Neither
  115. Other Settings: PERSISTENT-ONLY COMPILE
  116. */
  117. /* This procedure should always be RUN PERSISTENT. Report the error, */
  118. /* then cleanup and return. */
  119. IF NOT THIS-PROCEDURE:PERSISTENT THEN
  120. DO:
  121. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  122. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  123. RETURN.
  124. END.
  125. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  126. /* ************************* Create Window ************************** */
  127. &ANALYZE-SUSPEND _CREATE-WINDOW
  128. /* DESIGN Window definition (used by the UIB)
  129. CREATE WINDOW bTableWin ASSIGN
  130. HEIGHT = 11
  131. WIDTH = 168.
  132. /* END WINDOW DEFINITION */
  133. */
  134. &ANALYZE-RESUME
  135. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB bTableWin
  136. /* ************************* Included-Libraries *********************** */
  137. {src/adm2/browser.i}
  138. /* _UIB-CODE-BLOCK-END */
  139. &ANALYZE-RESUME
  140. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  141. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  142. /* SETTINGS FOR WINDOW bTableWin
  143. NOT-VISIBLE,,RUN-PERSISTENT */
  144. /* SETTINGS FOR FRAME F-Main
  145. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  146. /* BROWSE-TAB br_table RECT-1 F-Main */
  147. ASSIGN
  148. FRAME F-Main:SCROLLABLE = FALSE
  149. FRAME F-Main:HIDDEN = TRUE.
  150. /* _RUN-TIME-ATTRIBUTES-END */
  151. &ANALYZE-RESUME
  152. /* Setting information for Queries and Browse Widgets fields */
  153. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE br_table
  154. /* Query rebuild information for BROWSE br_table
  155. _TblList = "rowObject"
  156. _Options = "NO-LOCK INDEXED-REPOSITION"
  157. _FldNameList[1] > _<SDO>.rowObject.Trnr
  158. "Trnr" ? "9999" "integer" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  159. _FldNameList[2] > _<SDO>.rowObject.Tr_Art
  160. "Tr_Art" "Art" ? "integer" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  161. _FldNameList[3] > _<SDO>.rowObject.Guts_Dat
  162. "Guts_Dat" "Valuta" ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  163. _FldNameList[4] > _<SDO>.rowObject.Kunde
  164. "Kunde" ? "x(60)" "character" ? ? ? ? ? ? no "?" no no "60" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  165. _FldNameList[5] > _<SDO>.rowObject.Faknr
  166. "Faknr" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  167. _FldNameList[6] > _<SDO>.rowObject.Betrag
  168. "Betrag" ? ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  169. _FldNameList[7] > _<SDO>.rowObject.Taxen_01
  170. "Taxen_01" "Tax 1" "zz9.99-" "decimal" ? ? ? ? ? ? no "?" no no "7" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  171. _FldNameList[8] > _<SDO>.rowObject.Referenz
  172. "Referenz" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  173. _FldNameList[9] > _<SDO>.rowObject.Tn_Nr
  174. "Tn_Nr" "Teilnehmer-Nr" ? "integer" ? ? ? ? ? ? no "?" no no "21" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  175. _FldNameList[10] > _<SDO>.rowObject.Aufg_Dat
  176. "Aufg_Dat" "Aufg.Dat" ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  177. _FldNameList[11] > _<SDO>.rowObject.Verb_Dat
  178. "Verb_Dat" "Verarb.Dat" ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  179. _FldNameList[12] > _<SDO>.rowObject.Aufg_Ref
  180. "Aufg_Ref" "Aufg.Ref" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  181. _FldNameList[13] > _<SDO>.rowObject.Taxen_02
  182. "Taxen_02" "Tax 2" "zz9.99-" "decimal" ? ? ? ? ? ? no "?" no no "7" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  183. _FldNameList[14] > _<SDO>.rowObject.Rj_Cd
  184. "Rj_Cd" "FeCd" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  185. _FldNameList[15] > _<SDO>.rowObject.Mi_Fi_Nr
  186. "Mi_Fi_Nr" "Fiche" ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  187. _Query is NOT OPENED
  188. */ /* BROWSE br_table */
  189. &ANALYZE-RESUME
  190. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  191. /* Query rebuild information for FRAME F-Main
  192. _Options = "NO-LOCK"
  193. _Query is NOT OPENED
  194. */ /* FRAME F-Main */
  195. &ANALYZE-RESUME
  196. /* ************************ Control Triggers ************************ */
  197. &Scoped-define BROWSE-NAME br_table
  198. &Scoped-define SELF-NAME br_table
  199. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  200. ON CTRL-END OF br_table IN FRAME F-Main
  201. DO:
  202. APPLY "END":U TO BROWSE {&BROWSE-NAME}.
  203. END.
  204. /* _UIB-CODE-BLOCK-END */
  205. &ANALYZE-RESUME
  206. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  207. ON CTRL-HOME OF br_table IN FRAME F-Main
  208. DO:
  209. APPLY "HOME":U TO BROWSE {&BROWSE-NAME}.
  210. END.
  211. /* _UIB-CODE-BLOCK-END */
  212. &ANALYZE-RESUME
  213. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  214. ON DEFAULT-ACTION OF br_table IN FRAME F-Main
  215. DO:
  216. {src/adm2/brsdefault.i}
  217. END.
  218. /* _UIB-CODE-BLOCK-END */
  219. &ANALYZE-RESUME
  220. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  221. ON END OF br_table IN FRAME F-Main
  222. DO:
  223. {src/adm2/brsend.i}
  224. END.
  225. /* _UIB-CODE-BLOCK-END */
  226. &ANALYZE-RESUME
  227. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  228. ON HOME OF br_table IN FRAME F-Main
  229. DO:
  230. {src/adm2/brshome.i}
  231. END.
  232. /* _UIB-CODE-BLOCK-END */
  233. &ANALYZE-RESUME
  234. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  235. ON LEFT-MOUSE-CLICK OF br_table IN FRAME F-Main
  236. DO:
  237. APPLY 'ENTRY' TO {&BROWSE-NAME}.
  238. END.
  239. /* _UIB-CODE-BLOCK-END */
  240. &ANALYZE-RESUME
  241. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  242. ON LEFT-MOUSE-DBLCLICK OF br_table IN FRAME F-Main
  243. DO:
  244. IF NOT VALID-HANDLE( hFenster ) THEN RETURN NO-APPLY.
  245. RUN TOOLBAR IN hFenster ( INPUT 'UPDATE' ).
  246. RETURN NO-APPLY.
  247. END.
  248. /* _UIB-CODE-BLOCK-END */
  249. &ANALYZE-RESUME
  250. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  251. ON OFF-END OF br_table IN FRAME F-Main
  252. DO:
  253. {src/adm2/brsoffnd.i}
  254. END.
  255. /* _UIB-CODE-BLOCK-END */
  256. &ANALYZE-RESUME
  257. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  258. ON OFF-HOME OF br_table IN FRAME F-Main
  259. DO:
  260. {src/adm2/brsoffhm.i}
  261. END.
  262. /* _UIB-CODE-BLOCK-END */
  263. &ANALYZE-RESUME
  264. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  265. ON ROW-DISPLAY OF br_table IN FRAME F-Main
  266. DO:
  267. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO.
  268. DEFINE VARIABLE iFaknr AS INTEGER NO-UNDO.
  269. DEFINE VARIABLE nBetrag AS DECIMAL NO-UNDO.
  270. DEFINE BUFFER bDebop FOR Debop.
  271. DO WHILE TRUE:
  272. rowObject.Kunde:BGCOLOR IN BROWSE {&BROWSE-NAME} = 15.
  273. rowObject.Faknr:BGCOLOR IN BROWSE {&BROWSE-NAME} = 15.
  274. rowObject.Kunde:BGCOLOR IN BROWSE {&BROWSE-NAME} = 15.
  275. iKnr = (IF rowObject.Kunde BEGINS 'ERROR' THEN 0 ELSE INTEGER(SUBSTRING(rowObject.Kunde,01,06)) ) NO-ERROR.
  276. iFaknr = INTEGER(rowObject.Faknr).
  277. nBetrag = DECIMAL(rowObject.Betrag).
  278. FIND bDebop NO-LOCK
  279. WHERE bDebop.Firma = Firma
  280. AND bDebop.Knr = iKnr
  281. AND bDebop.Faknr = iFaknr NO-ERROR.
  282. IF NOT AVAILABLE bDebop THEN
  283. DO:
  284. rowObject.Kunde:BGCOLOR IN BROWSE {&BROWSE-NAME} = 14.
  285. rowObject.Faknr:BGCOLOR IN BROWSE {&BROWSE-NAME} = 14.
  286. LEAVE.
  287. END.
  288. IF nBetrag = bDebop.Saldo_Frw THEN LEAVE.
  289. IF nBetrag > bDebop.Saldo_Frw THEN
  290. DO:
  291. rowObject.Betrag:BGCOLOR IN BROWSE {&BROWSE-NAME} = 14.
  292. LEAVE.
  293. END.
  294. FIND SteuNr NO-LOCK
  295. WHERE SteuNr.Firma = Firma.
  296. IF (bDebop.Saldo - nBetrag) > SteuNr.SK_Tol_Max THEN
  297. DO:
  298. rowObject.Betrag:BGCOLOR IN BROWSE {&BROWSE-NAME} = 14.
  299. LEAVE.
  300. END.
  301. LEAVE.
  302. END.
  303. END.
  304. /* _UIB-CODE-BLOCK-END */
  305. &ANALYZE-RESUME
  306. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  307. ON ROW-ENTRY OF br_table IN FRAME F-Main
  308. DO:
  309. {src/adm2/brsentry.i}
  310. END.
  311. /* _UIB-CODE-BLOCK-END */
  312. &ANALYZE-RESUME
  313. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  314. ON ROW-LEAVE OF br_table IN FRAME F-Main
  315. DO:
  316. {src/adm2/brsleave.i}
  317. END.
  318. /* _UIB-CODE-BLOCK-END */
  319. &ANALYZE-RESUME
  320. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  321. ON SCROLL-NOTIFY OF br_table IN FRAME F-Main
  322. DO:
  323. {src/adm2/brsscrol.i}
  324. END.
  325. /* _UIB-CODE-BLOCK-END */
  326. &ANALYZE-RESUME
  327. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  328. ON START-SEARCH OF br_table IN FRAME F-Main
  329. DO:
  330. { incl/brwstartsearch.i }
  331. END.
  332. /* _UIB-CODE-BLOCK-END */
  333. &ANALYZE-RESUME
  334. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  335. ON VALUE-CHANGED OF br_table IN FRAME F-Main
  336. DO:
  337. {src/adm2/brschnge.i}
  338. END.
  339. /* _UIB-CODE-BLOCK-END */
  340. &ANALYZE-RESUME
  341. &UNDEFINE SELF-NAME
  342. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
  343. /* *************************** Main Block *************************** */
  344. { incl/brwmainblock.i }
  345. { incl/brwinternproc.i }
  346. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  347. RUN initializeObject.
  348. &ENDIF
  349. /* _UIB-CODE-BLOCK-END */
  350. &ANALYZE-RESUME
  351. /* ********************** Internal Procedures *********************** */
  352. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE destroyObject bTableWin
  353. PROCEDURE destroyObject :
  354. /*------------------------------------------------------------------------------
  355. Purpose: Super Override
  356. Parameters:
  357. Notes:
  358. ------------------------------------------------------------------------------*/
  359. DEF VAR hBrowser AS HANDLE NO-UNDO.
  360. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  361. DYNAMIC-FUNCTION('setBrowserDaten':U, INPUT hBrowser,
  362. INPUT Sektion ) NO-ERROR.
  363. RUN SUPER.
  364. /* Code placed here will execute AFTER standard behavior. */
  365. END PROCEDURE.
  366. /* _UIB-CODE-BLOCK-END */
  367. &ANALYZE-RESUME
  368. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _DEFAULT-DISABLE
  369. PROCEDURE disable_UI :
  370. /*------------------------------------------------------------------------------
  371. Purpose: DISABLE the User Interface
  372. Parameters: <none>
  373. Notes: Here we clean-up the user-interface by deleting
  374. dynamic widgets we have created and/or hide
  375. frames. This procedure is usually called when
  376. we are ready to "clean-up" after running.
  377. ------------------------------------------------------------------------------*/
  378. /* Hide all frames. */
  379. HIDE FRAME F-Main.
  380. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  381. END PROCEDURE.
  382. /* _UIB-CODE-BLOCK-END */
  383. &ANALYZE-RESUME
  384. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_BROWSE bTableWin
  385. PROCEDURE ENTRY_BROWSE :
  386. /*------------------------------------------------------------------------------
  387. Purpose:
  388. Parameters: <none>
  389. Notes:
  390. ------------------------------------------------------------------------------*/
  391. APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}.
  392. RETURN NO-APPLY.
  393. END PROCEDURE.
  394. /* _UIB-CODE-BLOCK-END */
  395. &ANALYZE-RESUME
  396. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin
  397. PROCEDURE initializeObject :
  398. /*------------------------------------------------------------------------------
  399. Purpose: Super Override
  400. Parameters:
  401. Notes:
  402. ------------------------------------------------------------------------------*/
  403. { incl/brwinitialize.i }
  404. END PROCEDURE.
  405. /* _UIB-CODE-BLOCK-END */
  406. &ANALYZE-RESUME
  407. /* ************************ Function Implementations ***************** */
  408. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setZeilenfarbe bTableWin
  409. FUNCTION setZeilenfarbe RETURNS LOGICAL
  410. ( ipFarbe AS INT ) :
  411. /*------------------------------------------------------------------------------*/
  412. /* Purpose: Super Override */
  413. /* Parameters: */
  414. /* Notes: */
  415. /*------------------------------------------------------------------------------*/
  416. /* DEFINE VARIABLE iKnr AS INTEGER NO-UNDO. */
  417. /* DEFINE VARIABLE iFaknr AS INTEGER NO-UNDO. */
  418. /* DEFINE VARIABLE iError AS INTEGER NO-UNDO. */
  419. /* DEFINE VARIABLE nBetrag AS DECIMAL NO-UNDO. */
  420. /* DEFINE VARIABLE lFound AS LOGICAL NO-UNDO. */
  421. /* */
  422. /* DEFINE BUFFER bDebop FOR Debop. */
  423. /* */
  424. /* DO WITH FRAME {&FRAME-NAME}: */
  425. /* iError = 0. */
  426. /* lFound = FALSE. */
  427. /* FOR EACH tBrowser WHERE VALID-HANDLE(tBrowser.hCol) */
  428. /* AND tBrowser.fVisible NO-LOCK: */
  429. /* tBrowser.hCol:BGCOLOR = ipFarbe. */
  430. /* */
  431. /* MESSAGE tBrowser.Feld tBrowser.cLabel */
  432. /* VIEW-AS ALERT-BOX. */
  433. /* CASE tBrowser.hCol:NAME: */
  434. /* WHEN 'Kunde' THEN */
  435. /* iKnr = INTEGER(ENTRY(1, tBrowser.hCol:SCREEN-VALUE, ' ')) NO-ERROR.*/
  436. /* WHEN 'Faknr' THEN */
  437. /* iFaknr = INTEGER(tBrowser.hCol:SCREEN-VALUE). */
  438. /* WHEN 'Betrag' THEN */
  439. /* nBetrag = DECIMAL(tBrowser.hCol:SCREEN-VALUE). */
  440. /* END CASE. */
  441. /* IF iKnr = ? THEN tBrowser.hCol:BGCOLOR = 12. */
  442. /* lFound = TRUE. */
  443. /* END. */
  444. /* */
  445. /* IF NOT lFound THEN RETURN FALSE. */
  446. /* DO WHILE iKnr <> ?: */
  447. /* FIND bDebop NO-LOCK */
  448. /* WHERE bDebop.Firma = Firma */
  449. /* AND bDebop.Knr = iKnr */
  450. /* AND bDebop.Faknr = iFaknr NO-ERROR. */
  451. /* IF NOT AVAILABLE bDebop THEN */
  452. /* DO: */
  453. /* iError = 3. */
  454. /* LEAVE. */
  455. /* END. */
  456. /* IF nBetrag = bDebop.Saldo_Frw THEN LEAVE. */
  457. /* IF nBetrag > bDebop.Saldo_Frw THEN */
  458. /* DO: */
  459. /* iError = 2. */
  460. /* LEAVE. */
  461. /* END. */
  462. /* FIND SteuNr NO-LOCK */
  463. /* WHERE SteuNr.Firma = Firma. */
  464. /* IF (bDebop.Saldo - nBetrag) > SteuNr.SK_Tol_Max THEN */
  465. /* DO: */
  466. /* iError = 1. */
  467. /* LEAVE. */
  468. /* END. */
  469. /* LEAVE. */
  470. /* END. */
  471. /* */
  472. /* CASE iError: */
  473. /* WHEN 0 THEN */
  474. /* LEAVE. */
  475. /* WHEN 3 THEN */
  476. /* DO: */
  477. /* FIND FIRST tBrowser NO-LOCK */
  478. /* WHERE tBrowser.Feld = 'Faknr' NO-ERROR. */
  479. /* IF NOT AVAILABLE tBrowser THEN MESSAGE 'Faknr nicht gefunden' */
  480. /* VIEW-AS ALERT-BOX. */
  481. /* ELSE tBrowser.hCol:BGCOLOR = 14. */
  482. /* FIND FIRST tBrowser NO-LOCK */
  483. /* WHERE tBrowser.Feld = 'Kunde' NO-ERROR. */
  484. /* tBrowser.hCol:BGCOLOR = 14. */
  485. /* END. */
  486. /* WHEN 1 OR */
  487. /* WHEN 2 THEN */
  488. /* DO: */
  489. /* FIND FIRST tBrowser NO-LOCK */
  490. /* WHERE tBrowser.Feld = 'Betrag'. */
  491. /* tBrowser.hCol:BGCOLOR = 14. */
  492. /* END. */
  493. /* */
  494. /* END CASE. */
  495. /* */
  496. /* END. */
  497. RETURN TRUE.
  498. END FUNCTION.
  499. /* _UIB-CODE-BLOCK-END */
  500. &ANALYZE-RESUME