b-debhi.w 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684
  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. DEFINE TEMP-TABLE tDebhi LIKE Debhi
  28. INDEX tDebhi-k1 IS PRIMARY
  29. Firma Knr Datum Trnr.
  30. { incl/tmpbrowser.i }
  31. {src/adm2/widgetprto.i}
  32. /* _UIB-CODE-BLOCK-END */
  33. &ANALYZE-RESUME
  34. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  35. /* ******************** Preprocessor Definitions ******************** */
  36. &Scoped-define PROCEDURE-TYPE SmartDataBrowser
  37. &Scoped-define DB-AWARE no
  38. &Scoped-define ADM-SUPPORTED-LINKS TableIO-Target,Data-Target,Update-Source
  39. /* Include file with RowObject temp-table definition */
  40. &Scoped-define DATA-FIELD-DEFS "d-debhi.i"
  41. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  42. &Scoped-define FRAME-NAME F-Main
  43. &Scoped-define BROWSE-NAME br_table
  44. /* Internal Tables (found by Frame, Query & Browse Queries) */
  45. &Scoped-define INTERNAL-TABLES rowObject
  46. /* Definitions for BROWSE br_table */
  47. &Scoped-define FIELDS-IN-QUERY-br_table rowObject.Datum rowObject.Faknr ~
  48. rowObject.Kte rowObject.FRW rowObject.Kurs rowObject.Soll_FRW ~
  49. rowObject.Soll rowObject.Haben_FRW rowObject.Haben rowObject.Skonto_FRW ~
  50. rowObject.Skonto rowObject.Saldo
  51. &Scoped-define ENABLED-FIELDS-IN-QUERY-br_table
  52. &Scoped-define QUERY-STRING-br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION
  53. &Scoped-define OPEN-QUERY-br_table OPEN QUERY br_table FOR EACH rowObject NO-LOCK INDEXED-REPOSITION.
  54. &Scoped-define TABLES-IN-QUERY-br_table rowObject
  55. &Scoped-define FIRST-TABLE-IN-QUERY-br_table rowObject
  56. /* Definitions for FRAME F-Main */
  57. /* Standard List Definitions */
  58. &Scoped-Define ENABLED-OBJECTS RECT-1 br_table
  59. /* Custom List Definitions */
  60. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  61. /* _UIB-PREPROCESSOR-BLOCK-END */
  62. &ANALYZE-RESUME
  63. /* ************************ Function Prototypes ********************** */
  64. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD setZeilenfarbe bTableWin
  65. FUNCTION setZeilenfarbe RETURNS LOGICAL
  66. ( ipFarbe AS INT ) FORWARD.
  67. /* _UIB-CODE-BLOCK-END */
  68. &ANALYZE-RESUME
  69. /* *********************** Control Definitions ********************** */
  70. /* Definitions of the field level widgets */
  71. DEFINE RECTANGLE RECT-1
  72. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  73. SIZE 160 BY 7.14.
  74. /* Query definitions */
  75. &ANALYZE-SUSPEND
  76. DEFINE TEMP-TABLE RowObject NO-UNDO
  77. {{&DATA-FIELD-DEFS}}
  78. {src/adm2/robjflds.i}.
  79. DEFINE QUERY br_table FOR
  80. rowObject SCROLLING.
  81. &ANALYZE-RESUME
  82. /* Browse definitions */
  83. DEFINE BROWSE br_table
  84. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS br_table bTableWin _STRUCTURED
  85. QUERY br_table NO-LOCK DISPLAY
  86. rowObject.Datum FORMAT "99.99.9999":U
  87. rowObject.Faknr FORMAT "zzzzz9":U
  88. rowObject.Kte FORMAT "x(04)":U
  89. rowObject.FRW FORMAT "x(03)":U
  90. rowObject.Kurs FORMAT "zzz9.9999":U
  91. rowObject.Soll_FRW COLUMN-LABEL "Soll FRW" FORMAT "zzz,zzz,zz9.99-":U
  92. rowObject.Soll FORMAT "zzz,zzz,zz9.99-":U
  93. rowObject.Haben_FRW COLUMN-LABEL "Haben FRW" FORMAT "zzz,zzz,zz9.99-":U
  94. rowObject.Haben FORMAT "zzz,zzz,zz9.99-":U
  95. rowObject.Skonto_FRW COLUMN-LABEL "Skonto FRW" FORMAT "zzz,zzz,zz9.99-":U
  96. rowObject.Skonto FORMAT "zzz,zz9.99-":U
  97. rowObject.Saldo FORMAT "zzz,zzz,zz9.99-":U
  98. /* _UIB-CODE-BLOCK-END */
  99. &ANALYZE-RESUME
  100. WITH NO-ASSIGN NO-AUTO-VALIDATE NO-ROW-MARKERS SEPARATORS SIZE 158 BY 6.67.
  101. /* ************************ Frame Definitions *********************** */
  102. DEFINE FRAME F-Main
  103. br_table AT ROW 1.48 COL 3 WIDGET-ID 200
  104. RECT-1 AT ROW 1.24 COL 2 WIDGET-ID 2
  105. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  106. SIDE-LABELS NO-UNDERLINE THREE-D
  107. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  108. /* *********************** Procedure Settings ************************ */
  109. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  110. /* Settings for THIS-PROCEDURE
  111. Type: SmartDataBrowser
  112. Data Source: "d-debhi.w"
  113. Allow: Basic,Browse
  114. Frames: 1
  115. Add Fields to: Neither
  116. Other Settings: PERSISTENT-ONLY COMPILE
  117. */
  118. /* This procedure should always be RUN PERSISTENT. Report the error, */
  119. /* then cleanup and return. */
  120. IF NOT THIS-PROCEDURE:PERSISTENT THEN 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 = 7.62
  131. WIDTH = 162.
  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.Datum
  158. "rowObject.Datum" ? ? "date" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  159. _FldNameList[2] = _<SDO>.rowObject.Faknr
  160. _FldNameList[3] = _<SDO>.rowObject.Kte
  161. _FldNameList[4] > _<SDO>.rowObject.FRW
  162. "rowObject.FRW" ? ? "character" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  163. _FldNameList[5] > _<SDO>.rowObject.Kurs
  164. "rowObject.Kurs" ? ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  165. _FldNameList[6] > _<SDO>.rowObject.Soll_FRW
  166. "rowObject.Soll_FRW" "Soll FRW" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  167. _FldNameList[7] = _<SDO>.rowObject.Soll
  168. _FldNameList[8] > _<SDO>.rowObject.Haben_FRW
  169. "rowObject.Haben_FRW" "Haben FRW" ? "decimal" ? ? ? ? ? ? no "?" no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  170. _FldNameList[9] = _<SDO>.rowObject.Haben
  171. _FldNameList[10] > _<SDO>.rowObject.Skonto_FRW
  172. "rowObject.Skonto_FRW" "Skonto FRW" ? "decimal" ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  173. _FldNameList[11] = _<SDO>.rowObject.Skonto
  174. _FldNameList[12] = _<SDO>.rowObject.Saldo
  175. _Query is NOT OPENED
  176. */ /* BROWSE br_table */
  177. &ANALYZE-RESUME
  178. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  179. /* Query rebuild information for FRAME F-Main
  180. _Options = "NO-LOCK"
  181. _Query is NOT OPENED
  182. */ /* FRAME F-Main */
  183. &ANALYZE-RESUME
  184. /* ************************ Control Triggers ************************ */
  185. &Scoped-define BROWSE-NAME br_table
  186. &Scoped-define SELF-NAME br_table
  187. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  188. ON CTRL-END OF br_table IN FRAME F-Main
  189. DO:
  190. APPLY "END":U TO BROWSE {&BROWSE-NAME}.
  191. END.
  192. /* _UIB-CODE-BLOCK-END */
  193. &ANALYZE-RESUME
  194. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  195. ON CTRL-HOME OF br_table IN FRAME F-Main
  196. DO:
  197. APPLY "HOME":U TO BROWSE {&BROWSE-NAME}.
  198. END.
  199. /* _UIB-CODE-BLOCK-END */
  200. &ANALYZE-RESUME
  201. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  202. ON DEFAULT-ACTION OF br_table IN FRAME F-Main
  203. DO:
  204. {src/adm2/brsdefault.i}
  205. END.
  206. /* _UIB-CODE-BLOCK-END */
  207. &ANALYZE-RESUME
  208. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  209. ON END OF br_table IN FRAME F-Main
  210. DO:
  211. {src/adm2/brsend.i}
  212. END.
  213. /* _UIB-CODE-BLOCK-END */
  214. &ANALYZE-RESUME
  215. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  216. ON HOME OF br_table IN FRAME F-Main
  217. DO:
  218. {src/adm2/brshome.i}
  219. END.
  220. /* _UIB-CODE-BLOCK-END */
  221. &ANALYZE-RESUME
  222. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  223. ON LEFT-MOUSE-CLICK OF br_table IN FRAME F-Main
  224. DO:
  225. APPLY 'ENTRY' TO {&BROWSE-NAME}.
  226. END.
  227. /* _UIB-CODE-BLOCK-END */
  228. &ANALYZE-RESUME
  229. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  230. ON LEFT-MOUSE-DBLCLICK OF br_table IN FRAME F-Main
  231. DO:
  232. IF NOT VALID-HANDLE( hFenster ) THEN RETURN NO-APPLY.
  233. RUN TOOLBAR IN hFenster ( INPUT 'UPDATE' ).
  234. RETURN NO-APPLY.
  235. END.
  236. /* _UIB-CODE-BLOCK-END */
  237. &ANALYZE-RESUME
  238. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  239. ON OFF-END OF br_table IN FRAME F-Main
  240. DO:
  241. {src/adm2/brsoffnd.i}
  242. END.
  243. /* _UIB-CODE-BLOCK-END */
  244. &ANALYZE-RESUME
  245. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  246. ON OFF-HOME OF br_table IN FRAME F-Main
  247. DO:
  248. {src/adm2/brsoffhm.i}
  249. END.
  250. /* _UIB-CODE-BLOCK-END */
  251. &ANALYZE-RESUME
  252. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  253. ON ROW-ENTRY OF br_table IN FRAME F-Main
  254. DO:
  255. {src/adm2/brsentry.i}
  256. END.
  257. /* _UIB-CODE-BLOCK-END */
  258. &ANALYZE-RESUME
  259. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  260. ON ROW-LEAVE OF br_table IN FRAME F-Main
  261. DO:
  262. {src/adm2/brsleave.i}
  263. END.
  264. /* _UIB-CODE-BLOCK-END */
  265. &ANALYZE-RESUME
  266. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  267. ON SCROLL-NOTIFY OF br_table IN FRAME F-Main
  268. DO:
  269. {src/adm2/brsscrol.i}
  270. END.
  271. /* _UIB-CODE-BLOCK-END */
  272. &ANALYZE-RESUME
  273. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  274. ON START-SEARCH OF br_table IN FRAME F-Main
  275. DO:
  276. { incl/brwstartsearch.i }
  277. END.
  278. /* _UIB-CODE-BLOCK-END */
  279. &ANALYZE-RESUME
  280. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL br_table bTableWin
  281. ON VALUE-CHANGED OF br_table IN FRAME F-Main
  282. DO:
  283. {src/adm2/brschnge.i}
  284. END.
  285. /* _UIB-CODE-BLOCK-END */
  286. &ANALYZE-RESUME
  287. &UNDEFINE SELF-NAME
  288. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK bTableWin
  289. /* *************************** Main Block *************************** */
  290. { incl/brwmainblock.i }
  291. /* { incl/brwinternproc.i }*/
  292. PROCEDURE FILTER_SETZEN:
  293. { incl/brwfilter.i }
  294. END PROCEDURE.
  295. PROCEDURE EXPORT_EXCEL:
  296. RUN DEBHI_EXPORT_EXCEL.
  297. END PROCEDURE.
  298. PROCEDURE ZURUECKSETZEN:
  299. { incl/brwresetbreitespalte.i }
  300. END PROCEDURE.
  301. PROCEDURE SORTIERBAR:
  302. DEF INPUT PARAMETER ipSort AS HANDLE NO-UNDO.
  303. DEF INPUT PARAMETER ipMove AS HANDLE NO-UNDO.
  304. DEF VAR hBrowser AS HANDLE NO-UNDO.
  305. ipMove:CHECKED = FALSE.
  306. ipSort:CHECKED = TRUE .
  307. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  308. hBrowser:COLUMN-MOVABLE = FALSE.
  309. hBrowser:ALLOW-COLUMN-SEARCHING = TRUE.
  310. END PROCEDURE.
  311. PROCEDURE VERSCHIEBBAR:
  312. DEF INPUT PARAMETER ipMove AS HANDLE NO-UNDO.
  313. DEF INPUT PARAMETER ipSort AS HANDLE NO-UNDO.
  314. DEF VAR hBrowser AS HANDLE NO-UNDO.
  315. ipSort:CHECKED = FALSE.
  316. ipMove:CHECKED = TRUE .
  317. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  318. hBrowser:ALLOW-COLUMN-SEARCHING = FALSE.
  319. hBrowser:COLUMN-MOVABLE = TRUE.
  320. END PROCEDURE.
  321. PROCEDURE ShellExecuteA EXTERNAL "shell32.dll":
  322. DEF INPUT PARAMETER hwnd AS LONG. /* Handle to parent window */
  323. DEF INPUT PARAMETER lpOperation AS CHAR. /* Operation to perform: open, print */
  324. DEF INPUT PARAMETER lpFile AS CHAR. /* Document or executable name */
  325. DEF INPUT PARAMETER lpParameters AS CHAR. /* Command line parameters to executable in lpFile */
  326. DEF INPUT PARAMETER lpDirectory AS CHAR. /* Default directory */
  327. DEF INPUT PARAMETER nShowCmd AS LONG. /* whether shown when opened:
  328. 0 hidden, 1 normal, minimized 2, maximized 3,
  329. 0 if lpFile is a document */
  330. DEF RETURN PARAMETER hInstance AS LONG. /* Less than or equal to 32 */
  331. END PROCEDURE.
  332. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  333. RUN initializeObject.
  334. &ENDIF
  335. /* _UIB-CODE-BLOCK-END */
  336. &ANALYZE-RESUME
  337. /* ********************** Internal Procedures *********************** */
  338. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DEBHI_EXPORT_EXCEL bTableWin
  339. PROCEDURE DEBHI_EXPORT_EXCEL :
  340. /*------------------------------------------------------------------------------*/
  341. /* Purpose: Super Override */
  342. /* Parameters: */
  343. /* Notes: */
  344. /*------------------------------------------------------------------------------*/
  345. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO.
  346. DEFINE VARIABLE rDebhi AS RECID NO-UNDO.
  347. DEFINE VARIABLE Rundbetr AS DECIMAL NO-UNDO.
  348. DEFINE VARIABLE cFwFrw AS CHARACTER NO-UNDO.
  349. DEFINE VARIABLE Vorlage AS CHARACTER NO-UNDO.
  350. DEFINE VARIABLE Datei AS CHARACTER NO-UNDO.
  351. DEFINE VARIABLE Daten AS CHARACTER NO-UNDO.
  352. DEFINE VARIABLE cParam AS CHARACTER NO-UNDO.
  353. DEFINE VARIABLE Zelle AS CHARACTER NO-UNDO.
  354. DEFINE VARIABLE io AS LOG NO-UNDO.
  355. DEFINE VARIABLE excelAppl AS COMPONENT-HANDLE NO-UNDO.
  356. rDebhi = DYNAMIC-FUNCTION ('getCurrentRecid':U IN hDaten) NO-ERROR.
  357. IF rDebhi = ? OR
  358. rDebhi = 0 THEN RETURN NO-APPLY.
  359. FIND Debhi NO-LOCK WHERE RECID(Debhi) = rDebhi NO-ERROR.
  360. IF NOT AVAILABLE Debhi THEN RETURN NO-APPLY.
  361. iKnr = Debhi.Knr.
  362. RELEASE Debhi.
  363. cFwFrw = DYNAMIC-FUNCTION ('getFwFrw':U) NO-ERROR.
  364. EMPTY TEMP-TABLE tDebhi.
  365. FOR EACH Debhi USE-INDEX Debhi-k2
  366. WHERE Debhi.Firma = D1Firma
  367. AND Debhi.Knr = iKnr NO-LOCK:
  368. CREATE tDebhi.
  369. BUFFER-COPY Debhi TO tDebhi.
  370. ASSIGN
  371. tDebhi.Saldo = 0.
  372. END.
  373. Vorlage = 'DebHist.xlsm'.
  374. Datei = 'DebHist.xlsm'.
  375. Daten = SESSION:TEMP-DIR + 'DebHist.csv'.
  376. cParam = Datei + CHR(01) + Vorlage.
  377. RUN CREATEDATEI ( INPUT cParam ).
  378. IF RETURN-VALUE BEGINS 'ERROR' THEN RETURN NO-APPLY.
  379. Datei = RETURN-VALUE.
  380. excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
  381. IF NOT VALID-HANDLE(excelAppl) THEN
  382. DO:
  383. MESSAGE 'Die Applikation Excel konnte nicht gestartet werden ! '
  384. VIEW-AS ALERT-BOX ERROR.
  385. RETURN NO-APPLY.
  386. END.
  387. OUTPUT TO VALUE(Daten).
  388. FIND Adresse USE-INDEX Adresse-k1
  389. WHERE Adresse.Firma = AdFirma
  390. AND Adresse.Knr = iKnr NO-LOCK.
  391. PUT CONTROL STRING(Adresse.Knr,'999999') CHR(10)
  392. Adresse.Anschrift[06] CHR(10)
  393. Adresse.Anschrift[07] CHR(10)
  394. Adresse.Anschrift[08] CHR(10)
  395. Adresse.Anschrift[09] CHR(10)
  396. Adresse.Anschrift[10] CHR(10)
  397. Adresse.Anschrift[11] CHR(10)
  398. '£' CHR(10) '£' CHR(10)
  399. '£Datum£Faknr£Kte£Frw£Soll Frw£Soll£Haben Frw£Haben£Skonto Frw£Skonto£Saldo Frw' CHR(10) '£' CHR(10).
  400. Rundbetr = 0.
  401. FOR EACH tDebhi BREAK
  402. BY tDebhi.Firma
  403. BY tDebhi.Knr
  404. BY tDebhi.Datum
  405. BY tDebhi.Trnr:
  406. IF FIRST-OF (tDebhi.Knr) THEN Rundbetr = 0.
  407. IF tDebhi.Frw = cFwFrw THEN Rundbetr = Rundbetr + tDebhi.Soll - tDebhi.Haben - tDebhi.Skonto.
  408. ELSE Rundbetr = Rundbetr + tDebhi.Soll_FRW - tDebhi.Haben_FRW - tDebhi.Skonto_FRW.
  409. PUT CONTROL '£'
  410. STRING(tDebhi.Datum,'99.99.9999') '£'
  411. STRING(tDebhi.Faknr,'>>>>>>9') '£'
  412. tDebhi.Kte '£'
  413. tDebhi.Frw '£'.
  414. IF tDebhi.Soll <> 0 THEN PUT CONTROL TRIM(STRING(tDebhi.Soll_FRW ,'->>>>>>>>9.99')) '£' TRIM(STRING(tDebhi.Soll ,'->>>>>>>>9.99')) '£'.
  415. ELSE PUT CONTROL '££'.
  416. IF tDebhi.Haben <> 0 THEN PUT CONTROL TRIM(STRING(tDebhi.Haben_FRW ,'->>>>>>>>9.99')) '£' TRIM(STRING(tDebhi.Haben ,'->>>>>>>>9.99')) '£'.
  417. ELSE PUT CONTROL '££'.
  418. IF tDebhi.Skonto <> 0 THEN PUT CONTROL TRIM(STRING(tDebhi.Skonto_FRW,'->>>>>>>>9.99')) '£' TRIM(STRING(tDebhi.Skonto,'->>>>>>>>9.99')) '£'.
  419. ELSE PUT CONTROL '££'.
  420. PUT CONTROL STRING(Rundbetr,'->>>>>>>>9.99') CHR(10).
  421. END.
  422. OUTPUT CLOSE.
  423. RUN OPENEXCEL ( INPUT excelAppl,
  424. INPUT Datei,
  425. INPUT '',
  426. OUTPUT io ).
  427. IF NOT io THEN
  428. DO:
  429. RUN FEHLER ( INPUT 1040 ).
  430. RETURN NO-APPLY.
  431. END.
  432. Zelle = 'A1'.
  433. excelAppl:Range(Zelle):SELECT.
  434. excelAppl:Selection:FormulaR1C1 = 'TEXT;' + Daten.
  435. excelAppl:Application:RUN ( 'DateiEinfügen' ).
  436. Zelle = 'A1'.
  437. excelAppl:Range(Zelle):SELECT.
  438. excelAppl:Selection:ColumnWidth = 0.3.
  439. DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
  440. END PROCEDURE.
  441. /* _UIB-CODE-BLOCK-END */
  442. &ANALYZE-RESUME
  443. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE destroyObject bTableWin
  444. PROCEDURE destroyObject :
  445. /*------------------------------------------------------------------------------
  446. Purpose: Super Override
  447. Parameters:
  448. Notes:
  449. ------------------------------------------------------------------------------*/
  450. DEF VAR hBrowser AS HANDLE NO-UNDO.
  451. hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
  452. DYNAMIC-FUNCTION('setBrowserDaten':U, INPUT hBrowser,
  453. INPUT Sektion ) NO-ERROR.
  454. RUN SUPER.
  455. /* Code placed here will execute AFTER standard behavior. */
  456. END PROCEDURE.
  457. /* _UIB-CODE-BLOCK-END */
  458. &ANALYZE-RESUME
  459. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI bTableWin _DEFAULT-DISABLE
  460. PROCEDURE disable_UI :
  461. /*------------------------------------------------------------------------------
  462. Purpose: DISABLE the User Interface
  463. Parameters: <none>
  464. Notes: Here we clean-up the user-interface by deleting
  465. dynamic widgets we have created and/or hide
  466. frames. This procedure is usually called when
  467. we are ready to "clean-up" after running.
  468. ------------------------------------------------------------------------------*/
  469. /* Hide all frames. */
  470. HIDE FRAME F-Main.
  471. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  472. END PROCEDURE.
  473. /* _UIB-CODE-BLOCK-END */
  474. &ANALYZE-RESUME
  475. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_BROWSE bTableWin
  476. PROCEDURE ENTRY_BROWSE :
  477. /*------------------------------------------------------------------------------
  478. Purpose:
  479. Parameters: <none>
  480. Notes:
  481. ------------------------------------------------------------------------------*/
  482. APPLY 'ENTRY' TO {&BROWSE-NAME} IN FRAME {&FRAME-NAME}.
  483. RETURN NO-APPLY.
  484. END PROCEDURE.
  485. /* _UIB-CODE-BLOCK-END */
  486. &ANALYZE-RESUME
  487. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject bTableWin
  488. PROCEDURE initializeObject :
  489. /*------------------------------------------------------------------------------
  490. Purpose: Super Override
  491. Parameters:
  492. Notes:
  493. ------------------------------------------------------------------------------*/
  494. { incl/brwinitialize.i }
  495. END PROCEDURE.
  496. /* _UIB-CODE-BLOCK-END */
  497. &ANALYZE-RESUME
  498. /* ************************ Function Implementations ***************** */
  499. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setZeilenfarbe bTableWin
  500. FUNCTION setZeilenfarbe RETURNS LOGICAL
  501. ( ipFarbe AS INT ) :
  502. /*------------------------------------------------------------------------------
  503. Purpose:
  504. Notes:
  505. ------------------------------------------------------------------------------*/
  506. { incl/brwsetzeilenfarbe.i }
  507. END FUNCTION.
  508. /* _UIB-CODE-BLOCK-END */
  509. &ANALYZE-RESUME