b-p_debza.w 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527
  1. &ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r12 GUI ADM1
  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 XSchrift NO-UNDO LIKE Schrift.
  9. DEFINE NEW SHARED TEMP-TABLE XTermOut NO-UNDO LIKE TermOut.
  10. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS B-table-Win
  11. /*------------------------------------------------------------------------
  12. File:
  13. Description: from BROWSER.W - Basic SmartBrowser Object Template
  14. Input Parameters:
  15. <none>
  16. Output Parameters:
  17. <none>
  18. ------------------------------------------------------------------------*/
  19. /* This .W file was created with the Progress UIB. */
  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. /* Parameters Definitions --- */
  29. /* Local Variable Definitions --- */
  30. DEF VAR AltSchname LIKE Schrift.Schname NO-UNDO.
  31. DEF VAR QOpen AS LOG NO-UNDO.
  32. DEF VAR FOpen AS LOG NO-UNDO.
  33. DEF VAR OBreite AS INT.
  34. DEF VAR cDrucker AS CHAR NO-UNDO.
  35. DEF VAR VProgname AS CHAR NO-UNDO.
  36. DEF VAR ARecid AS RECID INIT -1 NO-UNDO.
  37. DEF VAR BRecid AS RECID INIT -1 NO-UNDO.
  38. DEF VAR FInit AS LOG NO-UNDO.
  39. /* ------------------------------------------------------------------------- */
  40. DEF VAR VFaknr LIKE Debza.Faknr FORMAT "9999999".
  41. DEF VAR BFaknr LIKE Debza.Faknr FORMAT "9999999".
  42. DEF VAR VKnr LIKE Debza.Knr.
  43. DEF VAR BKnr LIKE Debza.Knr.
  44. DEF VAR VSuchbe LIKE Adresse.Suchbe.
  45. DEF VAR BSuchbe LIKE Adresse.Suchbe.
  46. DEF VAR VKonto AS CHAR.
  47. DEF VAR BKonto AS CHAR.
  48. DEF VAR VZahDat LIKE Debza.ZahDat.
  49. DEF VAR BZahDat LIKE Debza.ZahDat.
  50. DEF VAR VKto LIKE Debza.Konto.
  51. DEF VAR BKto LIKE Debza.Konto.
  52. DEF VAR VZahBetr AS INT FORMAT "99999999-".
  53. DEF VAR BZahBetr AS INT FORMAT "99999999-".
  54. DEF VAR VRekap AS LOG FORMAT "1/0".
  55. DEF VAR VDruDat AS DATE FORMAT "99.99.9999".
  56. DEF VAR VDatum AS DATE.
  57. DEF VAR VZeile AS CHAR FORMAT "x(200)".
  58. DEF VAR VUebertrag AS DEC.
  59. DEF VAR VUeberSko AS DEC.
  60. DEF VAR VSkonto AS DEC EXTENT 12.
  61. DEF BUFFER BAdresse FOR Adresse PRESELECT.
  62. DEF BUFFER BDebza FOR Debza PRESELECT.
  63. DEF WORKFILE WFile FIELD Kto AS CHAR FORMAT "x(12)"
  64. FIELD Betrag AS DEC
  65. FIELD Skonto AS DEC.
  66. /* ---------- Globale Variablen ---------------------------------- */
  67. { v8/globvar.i " " " " "SHARED" }
  68. { v8/debivar.i " " " " "SHARED" }
  69. { v8/artivar.i " " " " "SHARED" }
  70. { v8/contvar.i " " " " "SHARED" }
  71. { v8/listtitv.i "NEW" "SHARED" }
  72. /* _UIB-CODE-BLOCK-END */
  73. &ANALYZE-RESUME
  74. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  75. /* ******************** Preprocessor Definitions ******************** */
  76. &Scoped-define PROCEDURE-TYPE SmartBrowser
  77. &Scoped-define DB-AWARE no
  78. &Scoped-define ADM-SUPPORTED-LINKS Record-Source,Record-Target,TableIO-Target
  79. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  80. &Scoped-define FRAME-NAME F-Main
  81. &Scoped-define BROWSE-NAME Br_Druckername
  82. /* Internal Tables (found by Frame, Query & Browse Queries) */
  83. &Scoped-define INTERNAL-TABLES XSchrift Schrift
  84. /* Define KEY-PHRASE in case it is used by any query. */
  85. &Scoped-define KEY-PHRASE TRUE
  86. /* Definitions for BROWSE Br_Druckername */
  87. &Scoped-define FIELDS-IN-QUERY-Br_Druckername XSchrift.Schname
  88. &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Druckername
  89. &Scoped-define QUERY-STRING-Br_Druckername FOR EACH XSchrift WHERE ~{&KEY-PHRASE} NO-LOCK ~
  90. ~{&SORTBY-PHRASE}
  91. &Scoped-define OPEN-QUERY-Br_Druckername OPEN QUERY Br_Druckername FOR EACH XSchrift WHERE ~{&KEY-PHRASE} NO-LOCK ~
  92. ~{&SORTBY-PHRASE}.
  93. &Scoped-define TABLES-IN-QUERY-Br_Druckername XSchrift
  94. &Scoped-define FIRST-TABLE-IN-QUERY-Br_Druckername XSchrift
  95. /* Definitions for BROWSE Br_Schriftbild */
  96. &Scoped-define FIELDS-IN-QUERY-Br_Schriftbild Schrift.Schbild
  97. &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Schriftbild
  98. &Scoped-define QUERY-STRING-Br_Schriftbild FOR EACH Schrift NO-LOCK ~
  99. BY Schrift.Schbild
  100. &Scoped-define OPEN-QUERY-Br_Schriftbild OPEN QUERY Br_Schriftbild FOR EACH Schrift NO-LOCK ~
  101. BY Schrift.Schbild.
  102. &Scoped-define TABLES-IN-QUERY-Br_Schriftbild Schrift
  103. &Scoped-define FIRST-TABLE-IN-QUERY-Br_Schriftbild Schrift
  104. /* Definitions for FRAME F-Main */
  105. /* Standard List Definitions */
  106. &Scoped-Define ENABLED-FIELDS Listen.VNr[1] Listen.BNr[1] Listen.VNr[2] ~
  107. Listen.BNr[2] Listen.VDa[1] Listen.BDa[1] Listen.VCh[1] Listen.BCh[1]
  108. &Scoped-define ENABLED-TABLES Listen
  109. &Scoped-define FIRST-ENABLED-TABLE Listen
  110. &Scoped-Define ENABLED-OBJECTS Br_Schriftbild Br_Druckername F_Sort F_TZZ ~
  111. F_KZZ F_FZZ F_LQ F_KOPIE F_SCHACHT Btn_Start Btn_Ende RECT-10 RECT-11 ~
  112. RECT-12 RECT-13 RECT-17
  113. &Scoped-Define DISPLAYED-FIELDS Listen.VNr[1] Listen.BNr[1] Listen.VNr[2] ~
  114. Listen.BNr[2] Listen.VDa[1] Listen.BDa[1] Listen.VCh[1] Listen.BCh[1]
  115. &Scoped-define DISPLAYED-TABLES Listen
  116. &Scoped-define FIRST-DISPLAYED-TABLE Listen
  117. &Scoped-Define DISPLAYED-OBJECTS F_USER F_Programm F_Zeichen F_Sort F_TZZ ~
  118. F_KZZ F_FZZ F_LQ F_KOPIE F_SCHACHT
  119. /* Custom List Definitions */
  120. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  121. &Scoped-define List-1 F_Sort F_TZZ F_KZZ F_FZZ F_LQ F_KOPIE F_SCHACHT
  122. &Scoped-define List-2 Listen.VNr[1] Listen.BNr[1] Listen.VNr[2] ~
  123. Listen.BNr[2] Listen.VDa[1] Listen.BDa[1] Listen.VCh[1] Listen.BCh[1]
  124. /* _UIB-PREPROCESSOR-BLOCK-END */
  125. &ANALYZE-RESUME
  126. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Foreign Keys" B-table-Win _INLINE
  127. /* Actions: ? adm/support/keyedit.w ? ? ? */
  128. /* STRUCTURED-DATA
  129. <KEY-OBJECT>
  130. &BROWSE-NAME
  131. </KEY-OBJECT>
  132. <FOREIGN-KEYS>
  133. </FOREIGN-KEYS
  134. ><EXECUTING-CODE>
  135. **************************
  136. * Set attributes related to FOREIGN KEYS
  137. */
  138. RUN set-attribute-list (
  139. 'Keys-Accepted = "",
  140. Keys-Supplied = ""':U).
  141. /**************************
  142. </EXECUTING-CODE> */
  143. /* _UIB-CODE-BLOCK-END */
  144. &ANALYZE-RESUME
  145. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Advanced Query Options" B-table-Win _INLINE
  146. /* Actions: ? adm/support/advqedit.w ? ? ? */
  147. /* STRUCTURED-DATA
  148. <KEY-OBJECT>
  149. &BROWSE-NAME
  150. </KEY-OBJECT>
  151. <SORTBY-OPTIONS>
  152. </SORTBY-OPTIONS>
  153. <SORTBY-RUN-CODE>
  154. ************************
  155. * Set attributes related to SORTBY-OPTIONS */
  156. RUN set-attribute-list (
  157. 'SortBy-Options = ""':U).
  158. /************************
  159. </SORTBY-RUN-CODE>
  160. <FILTER-ATTRIBUTES>
  161. </FILTER-ATTRIBUTES> */
  162. /* _UIB-CODE-BLOCK-END */
  163. &ANALYZE-RESUME
  164. /* *********************** Control Definitions ********************** */
  165. /* Definitions of the field level widgets */
  166. DEFINE BUTTON Btn_Ende
  167. LABEL "&Ende"
  168. SIZE 14 BY 1.
  169. DEFINE BUTTON Btn_Start
  170. LABEL "&Starten"
  171. SIZE 14 BY 1.
  172. DEFINE VARIABLE F_FZZ AS INTEGER FORMAT "999":U INITIAL 0
  173. LABEL "Fusszeilen"
  174. VIEW-AS FILL-IN NATIVE
  175. SIZE 6 BY 1.05 TOOLTIP "Wieviele Zeilen müssen am Ende der Seite leer bleiben"
  176. BGCOLOR 15 NO-UNDO.
  177. DEFINE VARIABLE F_KOPIE AS INTEGER FORMAT "9":U INITIAL 0
  178. LABEL "Anz. Kopien"
  179. VIEW-AS FILL-IN NATIVE
  180. SIZE 4.2 BY 1.05 TOOLTIP "Anzahl Listenkopien"
  181. BGCOLOR 15 NO-UNDO.
  182. DEFINE VARIABLE F_KZZ AS INTEGER FORMAT "999":U INITIAL 0
  183. LABEL "Kopfzeilen"
  184. VIEW-AS FILL-IN NATIVE
  185. SIZE 6 BY 1.05 TOOLTIP "Wieviele leere Kopfzeilen müssen gedruckt werden"
  186. BGCOLOR 15 NO-UNDO.
  187. DEFINE VARIABLE F_LQ AS LOGICAL FORMAT "j/n":U INITIAL NO
  188. LABEL "Schönschrift"
  189. VIEW-AS FILL-IN NATIVE
  190. SIZE 4.2 BY 1.05 TOOLTIP "Wieviele Zeilen müssen am Ende der Seite leer bleiben"
  191. BGCOLOR 15 NO-UNDO.
  192. DEFINE VARIABLE F_Programm AS CHARACTER FORMAT "X(20)":U INITIAL "DEBZA"
  193. LABEL "Programm"
  194. VIEW-AS FILL-IN NATIVE
  195. SIZE 20 BY 1
  196. BGCOLOR 15 NO-UNDO.
  197. DEFINE VARIABLE F_SCHACHT AS INTEGER FORMAT "9":U INITIAL 0
  198. LABEL "Schacht"
  199. VIEW-AS FILL-IN NATIVE
  200. SIZE 4.2 BY 1.05 TOOLTIP "Welcher Schacht muss angesteuer werden"
  201. BGCOLOR 15 NO-UNDO.
  202. DEFINE VARIABLE F_TZZ AS INTEGER FORMAT "999":U INITIAL 0
  203. LABEL "Zeilen"
  204. VIEW-AS FILL-IN NATIVE
  205. SIZE 6 BY 1.05 TOOLTIP "Wieviele Zeilen hat die ganze Seite"
  206. BGCOLOR 15 NO-UNDO.
  207. DEFINE VARIABLE F_USER AS CHARACTER FORMAT "X(20)":U
  208. LABEL "Benutzer"
  209. VIEW-AS FILL-IN NATIVE
  210. SIZE 20 BY 1
  211. BGCOLOR 15 NO-UNDO.
  212. DEFINE VARIABLE F_Zeichen AS INTEGER FORMAT "zzz,zzz,zz9":U INITIAL 0
  213. LABEL "Anz. Zeichen"
  214. VIEW-AS FILL-IN NATIVE
  215. SIZE 20 BY 1
  216. BGCOLOR 15 NO-UNDO.
  217. DEFINE VARIABLE F_Sort AS INTEGER
  218. VIEW-AS RADIO-SET VERTICAL
  219. RADIO-BUTTONS
  220. "Fakturanummer", 1,
  221. "Kundennummer", 2,
  222. "Zahlungsdatum", 3
  223. SIZE 29 BY 2.48 NO-UNDO.
  224. DEFINE RECTANGLE RECT-10
  225. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  226. SIZE 40 BY 4.14.
  227. DEFINE RECTANGLE RECT-11
  228. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  229. SIZE 95 BY 9.33.
  230. DEFINE RECTANGLE RECT-12
  231. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  232. SIZE 40 BY 4.52.
  233. DEFINE RECTANGLE RECT-13
  234. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  235. SIZE 125 BY 1.81.
  236. DEFINE RECTANGLE RECT-17
  237. EDGE-PIXELS 3 GRAPHIC-EDGE NO-FILL
  238. SIZE 143 BY 17.
  239. /* Query definitions */
  240. &ANALYZE-SUSPEND
  241. DEFINE QUERY Br_Druckername FOR
  242. XSchrift SCROLLING.
  243. DEFINE QUERY Br_Schriftbild FOR
  244. Schrift SCROLLING.
  245. &ANALYZE-RESUME
  246. /* Browse definitions */
  247. DEFINE BROWSE Br_Druckername
  248. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Druckername B-table-Win _STRUCTURED
  249. QUERY Br_Druckername NO-LOCK DISPLAY
  250. XSchrift.Schname COLUMN-LABEL "Drucker" FORMAT "x(50)":U
  251. WIDTH 46
  252. /* _UIB-CODE-BLOCK-END */
  253. &ANALYZE-RESUME
  254. WITH NO-ASSIGN NO-ROW-MARKERS SEPARATORS SIZE 50 BY 8.57
  255. BGCOLOR 15 .
  256. DEFINE BROWSE Br_Schriftbild
  257. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Schriftbild B-table-Win _STRUCTURED
  258. QUERY Br_Schriftbild DISPLAY
  259. Schrift.Schbild FORMAT "x(30)":U
  260. /* _UIB-CODE-BLOCK-END */
  261. &ANALYZE-RESUME
  262. WITH NO-ROW-MARKERS SEPARATORS SIZE 35 BY 8.57
  263. BGCOLOR 15 .
  264. /* ************************ Frame Definitions *********************** */
  265. DEFINE FRAME F-Main
  266. Br_Schriftbild AT ROW 1.67 COL 60
  267. Br_Druckername AT ROW 1.67 COL 5
  268. F_USER AT ROW 2.19 COL 114.2 COLON-ALIGNED
  269. F_Programm AT ROW 3.33 COL 114.2 COLON-ALIGNED
  270. F_Zeichen AT ROW 4.43 COL 114.2 COLON-ALIGNED
  271. F_Sort AT ROW 7 COL 105 NO-LABEL
  272. F_TZZ AT ROW 11.57 COL 11.4 COLON-ALIGNED
  273. F_KZZ AT ROW 11.57 COL 33.8 COLON-ALIGNED
  274. F_FZZ AT ROW 11.57 COL 57.6 COLON-ALIGNED
  275. F_LQ AT ROW 11.62 COL 82.8 COLON-ALIGNED
  276. F_KOPIE AT ROW 11.62 COL 105.2 COLON-ALIGNED
  277. F_SCHACHT AT ROW 11.62 COL 122 COLON-ALIGNED
  278. Listen.VNr[1] AT ROW 13.38 COL 34 COLON-ALIGNED HELP
  279. ""
  280. LABEL "von - bis Fakturanummer" FORMAT "9999999"
  281. VIEW-AS FILL-IN NATIVE
  282. SIZE 12.6 BY 1
  283. BGCOLOR 15
  284. Listen.BNr[1] AT ROW 13.38 COL 56.4 COLON-ALIGNED HELP
  285. ""
  286. LABEL "--" FORMAT "9999999"
  287. VIEW-AS FILL-IN NATIVE
  288. SIZE 12.6 BY 1
  289. BGCOLOR 15
  290. Listen.VNr[2] AT ROW 14.38 COL 34 COLON-ALIGNED
  291. LABEL "von - bis Kundennummer" FORMAT "999999"
  292. VIEW-AS FILL-IN NATIVE
  293. SIZE 12.6 BY 1.05
  294. BGCOLOR 15
  295. Listen.BNr[2] AT ROW 14.38 COL 56.4 COLON-ALIGNED
  296. LABEL "--" FORMAT "999999"
  297. VIEW-AS FILL-IN NATIVE
  298. SIZE 12.6 BY 1.05
  299. BGCOLOR 15
  300. Listen.VDa[1] AT ROW 15.38 COL 34 COLON-ALIGNED
  301. LABEL "von - bis Zahlungsdatum" FORMAT "99.99.9999"
  302. VIEW-AS FILL-IN NATIVE
  303. SIZE 18.2 BY 1.05
  304. BGCOLOR 15
  305. Listen.BDa[1] AT ROW 15.38 COL 56.4 COLON-ALIGNED
  306. LABEL "--" FORMAT "99.99.9999"
  307. VIEW-AS FILL-IN NATIVE
  308. SIZE 18.2 BY 1.05
  309. BGCOLOR 15
  310. Listen.VCh[1] AT ROW 16.38 COL 34 COLON-ALIGNED
  311. LABEL "von - bis Kontonummer" FORMAT "x(12)"
  312. VIEW-AS FILL-IN NATIVE
  313. SIZE 18.2 BY 1
  314. BGCOLOR 15
  315. Listen.BCh[1] AT ROW 16.38 COL 56.4 COLON-ALIGNED
  316. LABEL "--" FORMAT "x(12)"
  317. VIEW-AS FILL-IN NATIVE
  318. SIZE 18.2 BY 1
  319. BGCOLOR 15
  320. Btn_Start AT ROW 13.57 COL 111.8
  321. Btn_Ende AT ROW 15.14 COL 111.8
  322. RECT-10 AT ROW 1.86 COL 100
  323. RECT-11 AT ROW 1.48 COL 3
  324. RECT-12 AT ROW 6.38 COL 100
  325. RECT-13 AT ROW 11.19 COL 3.8
  326. RECT-17 AT ROW 1 COL 1
  327. WITH 1 DOWN KEEP-TAB-ORDER OVERLAY
  328. SIDE-LABELS NO-UNDERLINE THREE-D
  329. AT COL 1 ROW 1 SCROLLABLE
  330. TITLE "Drucken Zahlungsjournal".
  331. /* *********************** Procedure Settings ************************ */
  332. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  333. /* Settings for THIS-PROCEDURE
  334. Type: SmartBrowser
  335. Allow: Basic,Browse
  336. Frames: 1
  337. Add Fields to: EXTERNAL-TABLES
  338. Other Settings: PERSISTENT-ONLY COMPILE
  339. Temp-Tables and Buffers:
  340. TABLE: XSchrift T "?" NO-UNDO Anadat Schrift
  341. TABLE: XTermOut T "NEW SHARED" NO-UNDO AnaDat TermOut
  342. END-TABLES.
  343. */
  344. /* This procedure should always be RUN PERSISTENT. Report the error, */
  345. /* then cleanup and return. */
  346. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  347. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  348. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  349. RETURN.
  350. END.
  351. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  352. /* ************************* Create Window ************************** */
  353. &ANALYZE-SUSPEND _CREATE-WINDOW
  354. /* DESIGN Window definition (used by the UIB)
  355. CREATE WINDOW B-table-Win ASSIGN
  356. HEIGHT = 18
  357. WIDTH = 144.
  358. /* END WINDOW DEFINITION */
  359. */
  360. &ANALYZE-RESUME
  361. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB B-table-Win
  362. /* ************************* Included-Libraries *********************** */
  363. {src/adm/method/browser.i}
  364. /* _UIB-CODE-BLOCK-END */
  365. &ANALYZE-RESUME
  366. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  367. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  368. /* SETTINGS FOR WINDOW B-table-Win
  369. NOT-VISIBLE,,RUN-PERSISTENT */
  370. /* SETTINGS FOR FRAME F-Main
  371. NOT-VISIBLE FRAME-NAME Size-to-Fit Custom */
  372. /* BROWSE-TAB Br_Schriftbild 1 F-Main */
  373. /* BROWSE-TAB Br_Druckername Br_Schriftbild F-Main */
  374. ASSIGN
  375. FRAME F-Main:SCROLLABLE = FALSE
  376. FRAME F-Main:HIDDEN = TRUE.
  377. /* SETTINGS FOR FILL-IN Listen.BCh[1] IN FRAME F-Main
  378. 2 EXP-LABEL EXP-FORMAT */
  379. /* SETTINGS FOR FILL-IN Listen.BDa[1] IN FRAME F-Main
  380. 2 EXP-LABEL EXP-FORMAT */
  381. /* SETTINGS FOR FILL-IN Listen.BNr[1] IN FRAME F-Main
  382. 2 EXP-LABEL EXP-FORMAT EXP-HELP */
  383. /* SETTINGS FOR FILL-IN Listen.BNr[2] IN FRAME F-Main
  384. 2 EXP-LABEL EXP-FORMAT */
  385. /* SETTINGS FOR FILL-IN F_FZZ IN FRAME F-Main
  386. 1 */
  387. /* SETTINGS FOR FILL-IN F_KOPIE IN FRAME F-Main
  388. 1 */
  389. /* SETTINGS FOR FILL-IN F_KZZ IN FRAME F-Main
  390. 1 */
  391. /* SETTINGS FOR FILL-IN F_LQ IN FRAME F-Main
  392. 1 */
  393. /* SETTINGS FOR FILL-IN F_Programm IN FRAME F-Main
  394. NO-ENABLE */
  395. /* SETTINGS FOR FILL-IN F_SCHACHT IN FRAME F-Main
  396. 1 */
  397. /* SETTINGS FOR RADIO-SET F_Sort IN FRAME F-Main
  398. 1 */
  399. /* SETTINGS FOR FILL-IN F_TZZ IN FRAME F-Main
  400. 1 */
  401. /* SETTINGS FOR FILL-IN F_USER IN FRAME F-Main
  402. NO-ENABLE */
  403. /* SETTINGS FOR FILL-IN F_Zeichen IN FRAME F-Main
  404. NO-ENABLE */
  405. /* SETTINGS FOR FILL-IN Listen.VCh[1] IN FRAME F-Main
  406. 2 EXP-LABEL EXP-FORMAT */
  407. /* SETTINGS FOR FILL-IN Listen.VDa[1] IN FRAME F-Main
  408. 2 EXP-LABEL EXP-FORMAT */
  409. /* SETTINGS FOR FILL-IN Listen.VNr[1] IN FRAME F-Main
  410. 2 EXP-LABEL EXP-FORMAT EXP-HELP */
  411. /* SETTINGS FOR FILL-IN Listen.VNr[2] IN FRAME F-Main
  412. 2 EXP-LABEL EXP-FORMAT */
  413. /* _RUN-TIME-ATTRIBUTES-END */
  414. &ANALYZE-RESUME
  415. /* Setting information for Queries and Browse Widgets fields */
  416. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Druckername
  417. /* Query rebuild information for BROWSE Br_Druckername
  418. _TblList = "Temp-Tables.XSchrift"
  419. _Options = "NO-LOCK KEY-PHRASE SORTBY-PHRASE"
  420. _FldNameList[1] > Temp-Tables.XSchrift.Schname
  421. "XSchrift.Schname" "Drucker" "x(50)" "character" ? ? ? ? ? ? no ? no no "46" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  422. _Query is NOT OPENED
  423. */ /* BROWSE Br_Druckername */
  424. &ANALYZE-RESUME
  425. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Schriftbild
  426. /* Query rebuild information for BROWSE Br_Schriftbild
  427. _TblList = "Anadat.Schrift"
  428. _OrdList = "Anadat.Schrift.Schbild|yes"
  429. _FldNameList[1] = Anadat.Schrift.Schbild
  430. _Query is NOT OPENED
  431. */ /* BROWSE Br_Schriftbild */
  432. &ANALYZE-RESUME
  433. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  434. /* Query rebuild information for FRAME F-Main
  435. _Options = "NO-LOCK"
  436. _Query is NOT OPENED
  437. */ /* FRAME F-Main */
  438. &ANALYZE-RESUME
  439. /* ************************ Control Triggers ************************ */
  440. &Scoped-define SELF-NAME F-Main
  441. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F-Main B-table-Win
  442. ON GO OF FRAME F-Main /* Drucken Zahlungsjournal */
  443. DO:
  444. DO TRANSACTION:
  445. FIND Listen WHERE RECID(Listen) = ARecid.
  446. Listen.Listfl = ''.
  447. END.
  448. RUN new-state ('drucken_ende':U).
  449. END.
  450. /* _UIB-CODE-BLOCK-END */
  451. &ANALYZE-RESUME
  452. &Scoped-define BROWSE-NAME Br_Druckername
  453. &Scoped-define SELF-NAME Br_Druckername
  454. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
  455. ON ROW-ENTRY OF Br_Druckername IN FRAME F-Main
  456. DO:
  457. /* This code displays initial values for newly added or copied rows. */
  458. {src/adm/template/brsentry.i}
  459. END.
  460. /* _UIB-CODE-BLOCK-END */
  461. &ANALYZE-RESUME
  462. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
  463. ON ROW-LEAVE OF Br_Druckername IN FRAME F-Main
  464. DO:
  465. /* Do not disable this code or no updates will take place except
  466. by pressing the Save button on an Update SmartPanel. */
  467. {src/adm/template/brsleave.i}
  468. END.
  469. /* _UIB-CODE-BLOCK-END */
  470. &ANALYZE-RESUME
  471. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
  472. ON VALUE-CHANGED OF Br_Druckername IN FRAME F-Main
  473. DO:
  474. {src/adm/template/brschnge.i}
  475. ASchname = XSchrift.Schname.
  476. OPEN QUERY Br_Schriftbild
  477. FOR EACH Schrift WHERE Schrift.Schname = ASchname NO-LOCK.
  478. FIND BSchrift WHERE BSchrift.Schname = ASchname
  479. AND BSchrift.Schbild = ASchbild NO-LOCK NO-ERROR.
  480. IF AVAILABLE BSchrift THEN DO:
  481. REPOSITION Br_Schriftbild TO RECID RECID(BSchrift) NO-ERROR.
  482. Br_Schriftbild:SELECT-FOCUSED-ROW() IN FRAME {&FRAME-NAME}.
  483. Br_Schriftbild:FETCH-SELECTED-ROW(1) IN FRAME {&FRAME-NAME}.
  484. END.
  485. ELSE DO:
  486. APPLY 'VALUE-CHANGED' TO BROWSE Br_Schriftbild.
  487. END.
  488. END.
  489. /* _UIB-CODE-BLOCK-END */
  490. &ANALYZE-RESUME
  491. &Scoped-define BROWSE-NAME Br_Schriftbild
  492. &Scoped-define SELF-NAME Br_Schriftbild
  493. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
  494. ON ROW-ENTRY OF Br_Schriftbild IN FRAME F-Main
  495. DO:
  496. /* This code displays initial values for newly added or copied rows. */
  497. {src/adm/template/brsentry.i}
  498. END.
  499. /* _UIB-CODE-BLOCK-END */
  500. &ANALYZE-RESUME
  501. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
  502. ON ROW-LEAVE OF Br_Schriftbild IN FRAME F-Main
  503. DO:
  504. /* Do not disable this code or no updates will take place except
  505. by pressing the Save button on an Update SmartPanel. */
  506. {src/adm/template/brsleave.i}
  507. END.
  508. /* _UIB-CODE-BLOCK-END */
  509. &ANALYZE-RESUME
  510. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
  511. ON VALUE-CHANGED OF Br_Schriftbild IN FRAME F-Main
  512. DO:
  513. {src/adm/template/brschnge.i}
  514. IF ASchbild <> Schrift.Schbild THEN DO:
  515. ASSIGN F_TZZ = Schrift.Schzztot
  516. F_KZZ = Schrift.Schzzbeg
  517. F_FZZ = Schrift.Schzzend.
  518. DISPLAY {&List-1} WITH FRAME {&FRAME-NAME}.
  519. END.
  520. ASchbild = Schrift.Schbild.
  521. END.
  522. /* _UIB-CODE-BLOCK-END */
  523. &ANALYZE-RESUME
  524. &Scoped-define SELF-NAME Btn_Ende
  525. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Ende B-table-Win
  526. ON CHOOSE OF Btn_Ende IN FRAME F-Main /* Ende */
  527. DO:
  528. DO TRANSACTION:
  529. FIND Listen WHERE RECID(Listen) = ARecid.
  530. Listen.Listfl = ''.
  531. END.
  532. { v8/druck_ende.i }
  533. RUN new-state ('Seite_1':U).
  534. APPLY 'GO' TO FRAME {&FRAME-NAME}.
  535. END.
  536. /* _UIB-CODE-BLOCK-END */
  537. &ANALYZE-RESUME
  538. &Scoped-define SELF-NAME Btn_Start
  539. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Start B-table-Win
  540. ON CHOOSE OF Btn_Start IN FRAME F-Main /* Starten */
  541. DO:
  542. DO TRANSACTION WITH FRAME {&FRAME-NAME}:
  543. ASSIGN {&List-1}.
  544. FIND Listen WHERE RECID(Listen) = ARecid.
  545. FIND LiDruck WHERE RECID(LiDruck) = BRecid.
  546. ASSIGN Breite = F_Zeichen
  547. Listen.Sort = F_Sort
  548. Listen.ProgWahl = F_Sort
  549. LiDruck.Listtzz = F_TZZ
  550. LiDruck.Listkzz = F_KZZ
  551. LiDruck.Listfzz = F_FZZ
  552. LiDruck.Listlq = F_LQ
  553. LiDruck.ListCopy = F_KOPIE
  554. LiDruck.Schacht = F_SCHACHT
  555. LiDruck.Listdru = XSchrift.Schname
  556. LiDruck.Listbild = Schrift.Schbild.
  557. IF LiDruck.ListCopy = 0 THEN LiDruck.ListCopy = 1.
  558. ASSIGN {&List-2}.
  559. IF VNr[01] = 0 AND BNr[01] = 0 THEN Bnr[01] = 999999.
  560. IF VNr[01] > BNr[01] THEN BNr[01] = VNr[01].
  561. IF VNr[02] = 0 AND BNr[02] = 0 THEN Bnr[02] = 999999.
  562. IF VNr[02] > BNr[02] THEN BNr[02] = VNr[02].
  563. IF VDa[01] = ? THEN VDa[01] = 01/01/1901.
  564. IF BDa[01] = ? THEN BDa[01] = DATE(31,12,YEAR(TODAY)).
  565. IF VCh[01] = '' AND BCh[01] = '' THEN BCh[01] = FILL('z', 12).
  566. IF VCh[01] > BCh[01] THEN BCh[01] = VCh[01].
  567. DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
  568. ASSIGN LiDruck.ProgWahl = Listen.ProgWahl
  569. LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99').
  570. RELEASE Listen .
  571. RELEASE LiDruck.
  572. END.
  573. FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
  574. FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
  575. DISABLE Btn_Start WITH FRAME {&FRAME-NAME}.
  576. DISABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
  577. RUN LIBILD.
  578. RUN DRUCKEN.
  579. DO TRANSACTION WITH FRAME {&FRAME-NAME}:
  580. FIND Listen WHERE RECID(Listen) = ARecid.
  581. ASSIGN Listen.Listfl = ''.
  582. RELEASE Listen .
  583. END.
  584. FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
  585. ENABLE Btn_Start WITH FRAME {&FRAME-NAME}.
  586. ENABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
  587. RETURN NO-APPLY.
  588. END.
  589. /* _UIB-CODE-BLOCK-END */
  590. &ANALYZE-RESUME
  591. &Scoped-define BROWSE-NAME Br_Druckername
  592. &UNDEFINE SELF-NAME
  593. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK B-table-Win
  594. /* *************************** Main Block *************************** */
  595. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  596. RUN dispatch IN THIS-PROCEDURE ('initialize':U).
  597. &ENDIF
  598. ON END-ERROR ANYWHERE
  599. DO:
  600. DO TRANSACTION:
  601. FIND Listen WHERE RECID(Listen) = ARecid.
  602. Listen.Listfl = ''.
  603. RELEASE Listen.
  604. END.
  605. END.
  606. /* _UIB-CODE-BLOCK-END */
  607. &ANALYZE-RESUME
  608. /* ********************** Internal Procedures *********************** */
  609. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ABSCHLUSS B-table-Win
  610. PROCEDURE ABSCHLUSS :
  611. /*------------------------------------------------------------------------------
  612. Purpose:
  613. Parameters: <none>
  614. Notes:
  615. ------------------------------------------------------------------------------*/
  616. IF VUebertrag = 0 AND
  617. VUeberSko = 0 THEN RETURN.
  618. { v8/putzeile.i "1" }
  619. SUBSTRING(VZeile,001) = TRIM(SUBSTRING(Helptext[12],21,20)).
  620. SUBSTRING(VZeile,080) = STRING(VUebertrag,"z,zzz,zz9.99-").
  621. SUBSTRING(VZeile,093) = STRING(VUeberSko ,"zzz,zz9.99-").
  622. { v8/putzeilf.i "2" }
  623. Uebertrag = ''.
  624. Zuszz = 1.
  625. FOR EACH WFile NO-LOCK:
  626. Zuszz = Zuszz + 1.
  627. END.
  628. RUN LISTTIT2.
  629. SUBSTRING(VZeile,047) = TRIM(SUBSTRING(Helptext[12],41,30)).
  630. FOR EACH WFile BY WFile.Kto:
  631. SUBSTRING(VZeile,080) = STRING(WFile.Betrag,"z,zzz,zz9.99-").
  632. SUBSTRING(VZeile,093) = STRING(WFile.Skonto,"zzz,zz9.99-").
  633. SUBSTRING(VZeile,106) = STRING(WFile.Kto ,"x(06)").
  634. { v8/putzeile.i "1" }
  635. END.
  636. { v8/putzeile.i "3" }
  637. Zuszz = 1.
  638. DO ix = 1 TO 11:
  639. IF VSkonto[ix] <> 0 THEN Zuszz = Zuszz + 1.
  640. END.
  641. RUN LISTTIT2.
  642. SUBSTRING(VZeile,020) = TRIM(SUBSTRING(Helptext[13],01,30)).
  643. DO ix = 1 TO 11:
  644. IF VSkonto[ix] = 0 THEN NEXT.
  645. FIND LAST MwstAns NO-LOCK
  646. WHERE MwstAns.Mwst_Cd = ix
  647. AND MwstAns.Datum <= VZahDat NO-ERROR.
  648. SUBSTRING(VZeile,054) = STRING(MwstAns.Mwst_Cd,"z9").
  649. SUBSTRING(VZeile,057) = STRING(MwstAns.Bez ,"x(30)").
  650. SUBSTRING(VZeile,092) = STRING(VSkonto[ix] ,"zzzz,zz9.99-").
  651. { v8/putzeile.i "3" }
  652. END.
  653. END PROCEDURE.
  654. /* _UIB-CODE-BLOCK-END */
  655. &ANALYZE-RESUME
  656. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available B-table-Win _ADM-ROW-AVAILABLE
  657. PROCEDURE adm-row-available :
  658. /*------------------------------------------------------------------------------
  659. Purpose: Dispatched to this procedure when the Record-
  660. Source has a new row available. This procedure
  661. tries to get the new row (or foriegn keys) from
  662. the Record-Source and process it.
  663. Parameters: <none>
  664. ------------------------------------------------------------------------------*/
  665. /* Define variables needed by this internal procedure. */
  666. {src/adm/template/row-head.i}
  667. /* Process the newly available records (i.e. display fields,
  668. open queries, and/or pass records on to any RECORD-TARGETS). */
  669. {src/adm/template/row-end.i}
  670. END PROCEDURE.
  671. /* _UIB-CODE-BLOCK-END */
  672. &ANALYZE-RESUME
  673. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AUSGABE B-table-Win
  674. PROCEDURE AUSGABE :
  675. /*------------------------------------------------------------------------------*/
  676. /* Purpose: */
  677. /* Parameters: <none> */
  678. /* Notes: */
  679. /*------------------------------------------------------------------------------*/
  680. DEF VAR cAdresse AS CHAR NO-UNDO.
  681. DEF VAR j1 AS INT NO-UNDO.
  682. DEF VAR j2 AS INT NO-UNDO.
  683. FIND Debst WHERE Debst.Firma = BDebza.Firma
  684. AND Debst.Knr = BDebza.Knr NO-LOCK NO-ERROR.
  685. cAdresse = ''.
  686. DO WHILE TRUE:
  687. IF NOT Debst.Passant THEN DO:
  688. cAdresse = BAdresse.Anzeig_Br.
  689. LEAVE.
  690. END.
  691. FIND Passant USE-INDEX Passant-k1
  692. WHERE Passant.Firma = BDebza.Firma
  693. AND Passant.Knr = BDebza.Knr
  694. AND Passant.Faknr = BDebza.Faknr NO-LOCK NO-ERROR.
  695. IF NOT AVAILABLE Passant THEN DO:
  696. cAdresse = BAdresse.Anzeig_Br.
  697. LEAVE.
  698. END.
  699. DO j2 = 5 TO 1 BY -1:
  700. IF Passant.Adr[j2] = '' THEN NEXT.
  701. LEAVE.
  702. END.
  703. IF j2 = 0 THEN DO:
  704. cAdresse = '????????????????????'.
  705. LEAVE.
  706. END.
  707. IF j2 = 1 THEN DO:
  708. cAdresse = Passant.Adr[01].
  709. LEAVE.
  710. END.
  711. IF j2 = 2 THEN DO:
  712. cAdresse = Passant.Adr[01] + ', ' + Passant.Adr[02].
  713. LEAVE.
  714. END.
  715. cAdresse = Passant.Adr[01] + ', '.
  716. DO j1 = 2 TO (j2 - 1):
  717. IF Passant.Adr[j1] = '' THEN NEXT.
  718. cAdresse = cAdresse + Passant.Adr[j1] + ', '.
  719. END.
  720. cAdresse = cAdresse + Passant.Adr[j2].
  721. LEAVE.
  722. END.
  723. IF VSort = 1 THEN DO:
  724. SUBSTRING(VZeile,001) = STRING(BDebza.Faknr ,"9999999").
  725. SUBSTRING(VZeile,009) = STRING(BDebza.Knr ,"9999999").
  726. SUBSTRING(VZeile,017) = STRING(cAdresse ,"x(45)").
  727. SUBSTRING(VZeile,064) = STRING(BDebza.ZahDat ,"99.99.9999").
  728. SUBSTRING(VZeile,076) = STRING(BDebza.Kte ,"x(04)").
  729. END.
  730. IF VSort = 2 THEN DO:
  731. SUBSTRING(VZeile,001) = STRING(BDebza.Knr ,"9999999").
  732. SUBSTRING(VZeile,009) = STRING(cAdresse ,"x(45)").
  733. SUBSTRING(VZeile,056) = STRING(BDebza.Faknr ,"9999999").
  734. SUBSTRING(VZeile,064) = STRING(BDebza.ZahDat ,"99.99.9999").
  735. SUBSTRING(VZeile,076) = STRING(BDebza.Kte ,"x(04)").
  736. END.
  737. IF VSort = 3 THEN DO:
  738. SUBSTRING(VZeile,001) = STRING(BDebza.ZahDat ,"99.99.9999").
  739. SUBSTRING(VZeile,013) = STRING(BDebza.Faknr ,"9999999").
  740. SUBSTRING(VZeile,021) = STRING(BDebza.Knr ,"9999999").
  741. SUBSTRING(VZeile,029) = STRING(cAdresse ,"x(45)").
  742. SUBSTRING(VZeile,076) = STRING(BDebza.Kte ,"x(04)").
  743. END.
  744. IF BDebza.ZahBetr <> 0 THEN
  745. SUBSTRING(VZeile,080) = STRING(BDebza.ZahBetr,"z,zzz,zz9.99-").
  746. IF BDebza.Skonto <> 0 THEN
  747. SUBSTRING(VZeile,093) = STRING(BDebza.Skonto ,"zzz,zz9.99-").
  748. SUBSTRING(VZeile,106) = STRING(BDebza.Konto ,"x(08)").
  749. RUN LISTTIT2.
  750. { v8/putzeile.i "1" }
  751. FIND FIRST WFile WHERE WFile.Kto = BDebza.Konto NO-ERROR.
  752. IF NOT AVAILABLE WFile THEN DO:
  753. CREATE WFile.
  754. ASSIGN WFile.Kto = BDebza.Konto.
  755. END.
  756. ASSIGN WFile.Betrag = WFile.Betrag + BDebza.ZahBetr
  757. WFile.Skonto = WFile.Skonto + BDebza.Skonto.
  758. DO ix = 1 TO 11:
  759. VSkonto[ix] = VSkonto[ix] + BDebza.ZahSkon[ix].
  760. END.
  761. VUebertrag = VUebertrag + BDebza.ZahBetr.
  762. VUeberSko = VUeberSko + BDebza.Skonto .
  763. Uebertrag = "".
  764. SUBSTRING(Uebertrag,001) = TRIM(SUBSTRING(Helptext[12],01,20)).
  765. SUBSTRING(Uebertrag,080) = STRING(VUebertrag,"z,zzz,zz9.99-").
  766. SUBSTRING(Uebertrag,093) = STRING(VUeberSko ,"zzz,zz9.99-").
  767. END PROCEDURE.
  768. /* _UIB-CODE-BLOCK-END */
  769. &ANALYZE-RESUME
  770. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI B-table-Win _DEFAULT-DISABLE
  771. PROCEDURE disable_UI :
  772. /*------------------------------------------------------------------------------
  773. Purpose: DISABLE the User Interface
  774. Parameters: <none>
  775. Notes: Here we clean-up the user-interface by deleting
  776. dynamic widgets we have created and/or hide
  777. frames. This procedure is usually called when
  778. we are ready to "clean-up" after running.
  779. ------------------------------------------------------------------------------*/
  780. /* Hide all frames. */
  781. HIDE FRAME F-Main.
  782. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  783. END PROCEDURE.
  784. /* _UIB-CODE-BLOCK-END */
  785. &ANALYZE-RESUME
  786. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DRUCKEN B-table-Win
  787. PROCEDURE DRUCKEN :
  788. /* ---------------------------------------------------------------------------
  789. Purpose:
  790. Parameters: <none>
  791. Notes:
  792. ------------------------------------------------------------------------------*/
  793. FIND Steuer WHERE Steuer.Firma = GVFirma NO-LOCK NO-ERROR.
  794. VSort = Listen.Sort.
  795. VFaknr = Listen.VNr[01].
  796. BFaknr = Listen.BNr[01].
  797. VKnr = Listen.VNr[02].
  798. BKnr = Listen.BNr[02].
  799. VZahDat = Listen.VDa[01].
  800. BZahDat = Listen.BDa[01].
  801. VKonto = Listen.VCh[01].
  802. BKonto = Listen.BCh[01].
  803. Tittxt = STRING(VZahDat,"99.99.9999") + " - " + STRING(BZahDat,"99.99.9999").
  804. RUN LISTTIT1.
  805. /* ---------------------------------------------------------------------- */
  806. /* Sortiert nach Fakturanummer */
  807. /* ---------------------------------------------------------------------- */
  808. IF VSort = 1 THEN DO:
  809. DO PRESELECT
  810. EACH BDebza USE-INDEX Debza-k2
  811. WHERE BDebza.Firma = GVFirma
  812. AND BDebza.Faknr >= VFaknr
  813. AND BDebza.Faknr <= BFaknr
  814. AND BDebza.ZahDat >= VZahDat
  815. AND BDebza.ZahDat <= BZahDat
  816. AND BDebza.Konto >= VKonto
  817. AND BDebza.Konto <= BKonto
  818. AND BDebza.Knr >= VKnr
  819. AND BDebza.Knr <= BKnr NO-LOCK,
  820. FIRST BAdresse WHERE BAdresse.Firma = AdFirma
  821. AND BAdresse.Knr = BDebza.Knr NO-LOCK :
  822. DO VCopy = 1 TO LiDruck.ListCopy:
  823. LNeu = TRUE.
  824. FOR EACH WFile:
  825. DELETE WFile.
  826. END.
  827. VUebertrag = 0.
  828. VUeberSko = 0.
  829. VZeile = "".
  830. VLine = 0.
  831. VSkonto = 0.
  832. { v8/opendruck.i }
  833. REPEAT:
  834. IF LNeu THEN FIND FIRST BAdresse NO-ERROR.
  835. ELSE FIND NEXT BAdresse NO-ERROR.
  836. IF NOT AVAILABLE BAdresse THEN LEAVE.
  837. LNeu = FALSE.
  838. RUN AUSGABE.
  839. END. /* FIND NEXT */
  840. RUN ABSCHLUSS.
  841. TiDruck = TRUE.
  842. IF DOpen = TRUE THEN DO:
  843. OUTPUT CLOSE.
  844. IF lPDF THEN RUN datei2viper.p ( cDrucker ).
  845. END.
  846. ELSE DO:
  847. RUN "v8/d-liste.w" ( INPUT Helptext[02] ).
  848. END.
  849. END. /* Kopien */
  850. END. /* PRESELECT */
  851. END. /* SORT - IF */
  852. /* ---------------------------------------------------------------------- */
  853. /* Sortiert nach Kundennummer */
  854. /* ---------------------------------------------------------------------- */
  855. IF VSort = 2 THEN DO:
  856. DO PRESELECT
  857. EACH BDebza USE-INDEX Debza-k1
  858. WHERE BDebza.Firma = GVFirma
  859. AND BDebza.Faknr >= VFaknr
  860. AND BDebza.Faknr <= BFaknr
  861. AND BDebza.ZahDat >= VZahDat
  862. AND BDebza.ZahDat <= BZahDat
  863. AND BDebza.Konto >= VKonto
  864. AND BDebza.Konto <= BKonto
  865. AND BDebza.Knr >= VKnr
  866. AND BDebza.Knr <= BKnr NO-LOCK,
  867. FIRST BAdresse WHERE BAdresse.Firma = AdFirma
  868. AND BAdresse.Knr = BDebza.Knr NO-LOCK :
  869. DO VCopy = 1 TO LiDruck.ListCopy:
  870. LNeu = TRUE.
  871. FOR EACH WFile:
  872. DELETE WFile.
  873. END.
  874. VUebertrag = 0.
  875. VUeberSko = 0.
  876. VZeile = "".
  877. VLine = 0.
  878. VSkonto = 0.
  879. { v8/opendruck.i }
  880. REPEAT:
  881. IF LNeu THEN FIND FIRST BAdresse NO-ERROR.
  882. ELSE FIND NEXT BAdresse NO-ERROR.
  883. IF NOT AVAILABLE BAdresse THEN LEAVE.
  884. LNeu = FALSE.
  885. RUN AUSGABE.
  886. END. /* FIND NEXT */
  887. RUN ABSCHLUSS.
  888. TiDruck = TRUE.
  889. IF DOpen = TRUE THEN DO:
  890. OUTPUT CLOSE.
  891. IF lPDF THEN RUN datei2viper.p ( cDrucker ).
  892. END.
  893. ELSE DO:
  894. RUN "v8/d-liste.w" ( INPUT Helptext[02] ).
  895. END.
  896. END. /* Kopien */
  897. END. /* PRESELECT */
  898. END. /* SORT - IF */
  899. /* ---------------------------------------------------------------------- */
  900. /* Sortiert nach Zahlungsdatum */
  901. /* ---------------------------------------------------------------------- */
  902. IF VSort = 3 THEN DO:
  903. DO PRESELECT
  904. EACH BDebza USE-INDEX Debza-k3
  905. WHERE BDebza.Firma = GVFirma
  906. AND BDebza.Faknr >= VFaknr
  907. AND BDebza.Faknr <= BFaknr
  908. AND BDebza.ZahDat >= VZahDat
  909. AND BDebza.ZahDat <= BZahDat
  910. AND BDebza.Konto >= VKonto
  911. AND BDebza.Konto <= BKonto
  912. AND BDebza.Knr >= VKnr
  913. AND BDebza.Knr <= BKnr NO-LOCK,
  914. FIRST BAdresse WHERE BAdresse.Firma = AdFirma
  915. AND BAdresse.Knr = BDebza.Knr NO-LOCK :
  916. DO VCopy = 1 TO LiDruck.ListCopy:
  917. LNeu = TRUE.
  918. FOR EACH WFile:
  919. DELETE WFile.
  920. END.
  921. VUebertrag = 0.
  922. VUeberSko = 0.
  923. VZeile = "".
  924. VLine = 0.
  925. VSkonto = 0.
  926. { v8/opendruck.i }
  927. REPEAT:
  928. IF LNeu THEN FIND FIRST BAdresse NO-ERROR.
  929. ELSE FIND NEXT BAdresse NO-ERROR.
  930. IF NOT AVAILABLE BAdresse THEN LEAVE.
  931. LNeu = FALSE.
  932. RUN AUSGABE.
  933. END. /* FIND NEXT */
  934. RUN ABSCHLUSS.
  935. TiDruck = TRUE.
  936. IF DOpen = TRUE THEN DO:
  937. PAGE.
  938. OUTPUT CLOSE.
  939. IF lPDF THEN RUN datei2viper.p ( cDrucker ).
  940. END.
  941. ELSE DO:
  942. RUN "v8/d-liste.w" ( INPUT Helptext[02] ).
  943. END.
  944. END. /* Kopien */
  945. END. /* PRESELECT */
  946. END. /* SORT - IF */
  947. APPLY 'CHOOSE' TO Btn_Ende IN FRAME {&FRAME-NAME}.
  948. RETURN NO-APPLY.
  949. END PROCEDURE.
  950. /* _UIB-CODE-BLOCK-END */
  951. &ANALYZE-RESUME
  952. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LIBILD B-table-Win
  953. PROCEDURE LIBILD :
  954. /*------------------------------------------------------------------------------
  955. Purpose:
  956. Parameters: <none>
  957. Notes:
  958. ------------------------------------------------------------------------------*/
  959. { v8/libild.i }
  960. END PROCEDURE.
  961. /* _UIB-CODE-BLOCK-END */
  962. &ANALYZE-RESUME
  963. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LISTTIT1 B-table-Win
  964. PROCEDURE LISTTIT1 :
  965. /*------------------------------------------------------------------------------
  966. Purpose:
  967. Parameters: <none>
  968. Notes:
  969. ------------------------------------------------------------------------------*/
  970. { v8/listtit1.i }
  971. END PROCEDURE.
  972. /* _UIB-CODE-BLOCK-END */
  973. &ANALYZE-RESUME
  974. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LISTTIT2 B-table-Win
  975. PROCEDURE LISTTIT2 :
  976. /*------------------------------------------------------------------------------
  977. Purpose:
  978. Parameters: <none>
  979. Notes:
  980. ------------------------------------------------------------------------------*/
  981. { v8/listtit2.i }
  982. END PROCEDURE.
  983. /* _UIB-CODE-BLOCK-END */
  984. &ANALYZE-RESUME
  985. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-display-fields B-table-Win
  986. PROCEDURE local-display-fields :
  987. /*------------------------------------------------------------------------------
  988. Purpose: Override standard ADM method
  989. Notes:
  990. ------------------------------------------------------------------------------*/
  991. RUN dispatch IN THIS-PROCEDURE ( INPUT 'display-fields':U ) .
  992. DISPLAY {&List-1} WITH FRAME {&FRAME-NAME}.
  993. IF ARecid > -1 THEN DO:
  994. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  995. DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
  996. END.
  997. ENABLE {&List-2} WITH FRAME {&FRAME-NAME}.
  998. END PROCEDURE.
  999. /* _UIB-CODE-BLOCK-END */
  1000. &ANALYZE-RESUME
  1001. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-hide B-table-Win
  1002. PROCEDURE local-hide :
  1003. /*------------------------------------------------------------------------------
  1004. Purpose: Override standard ADM method
  1005. Notes:
  1006. ------------------------------------------------------------------------------*/
  1007. DO TRANSACTION:
  1008. FIND Listen WHERE RECID(Listen) = ARecid.
  1009. Listen.Listfl = ''.
  1010. END.
  1011. RUN dispatch IN THIS-PROCEDURE ( INPUT 'hide':U ) .
  1012. END PROCEDURE.
  1013. /* _UIB-CODE-BLOCK-END */
  1014. &ANALYZE-RESUME
  1015. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-initialize B-table-Win
  1016. PROCEDURE local-initialize :
  1017. /*------------------------------------------------------------------------------
  1018. Purpose: Override standard ADM method
  1019. Notes:
  1020. ------------------------------------------------------------------------------*/
  1021. DEF BUFFER BListen FOR Listen.
  1022. DEF VAR VListnr LIKE Listen.Listnr.
  1023. F_USER = DYNAMIC-FUNCTION('getDBUser':U) NO-ERROR.
  1024. QOpen = FALSE.
  1025. FInit = TRUE.
  1026. RUN dispatch IN THIS-PROCEDURE ( INPUT 'initialize':U ) .
  1027. VProgname = TRIM(F_USER) + '!' + TRIM(F_Programm).
  1028. FIND FIRST Listen USE-INDEX Listen-k1
  1029. WHERE Listen.Firma = GVFirma
  1030. AND Listen.Progname = VProgname
  1031. AND Listen.Listfl = '' NO-LOCK NO-ERROR.
  1032. DO TRANSACTION:
  1033. IF NOT AVAILABLE Listen THEN DO:
  1034. FIND LAST BListen USE-INDEX Listen-k1
  1035. WHERE BListen.Firma = GVFirma NO-LOCK NO-ERROR.
  1036. IF AVAILABLE BListen THEN VListnr = BListen.Listnr + 1.
  1037. ELSE VListnr = 1.
  1038. CREATE Listen.
  1039. ASSIGN Listen.Firma = GVFirma
  1040. Listen.Listnr = VListnr
  1041. Listen.Progname = VProgname
  1042. Listen.Listfl = ''
  1043. Listen.Jahr = GVJahr
  1044. Listen.Sprcd = GVSprcd
  1045. Listen.Sort = 1
  1046. Listen.ProgWahl = 1.
  1047. END.
  1048. ARecid = RECID(Listen).
  1049. FIND LiDruck USE-INDEX LiDruck-k1
  1050. WHERE LiDruck.Firma = GVFirma
  1051. AND LiDruck.Listnr = Listen.Listnr
  1052. AND LiDruck.ProgWahl = Listen.ProgWahl NO-LOCK NO-ERROR.
  1053. IF NOT AVAILABLE LiDruck THEN DO:
  1054. CREATE LiDruck.
  1055. ASSIGN LiDruck.Firma = GVFirma
  1056. LiDruck.Listnr = Listen.Listnr
  1057. LiDruck.ProgWahl = Listen.ProgWahl
  1058. LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99')
  1059. LiDruck.ListCopy = 1
  1060. LiDruck.Schacht = 0
  1061. LiDruck.Listlq = FALSE.
  1062. END.
  1063. BRecid = RECID(LiDruck).
  1064. FIND Listen WHERE RECID(Listen) = ARecid.
  1065. Listen.Listfl = 'A'.
  1066. RELEASE Listen.
  1067. RELEASE LiDruck.
  1068. END. /* TRANSACTION */
  1069. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  1070. FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
  1071. FOpen = TRUE.
  1072. ASchname = LiDruck.ListDru.
  1073. ASchbild = LiDruck.ListBild.
  1074. RUN dispatch IN THIS-PROCEDURE ('open-query':U).
  1075. FIND FIRST XSchrift WHERE XSchrift.Schname = ASchname NO-LOCK NO-ERROR.
  1076. IF AVAILABLE XSchrift THEN DO:
  1077. REPOSITION Br_Druckername TO RECID RECID(XSchrift) NO-ERROR.
  1078. Br_Druckername:SELECT-FOCUSED-ROW() IN FRAME {&FRAME-NAME}.
  1079. Br_Druckername:FETCH-SELECTED-ROW(1) IN FRAME {&FRAME-NAME}.
  1080. END.
  1081. ELSE DO:
  1082. Br_Druckername:FETCH-SELECTED-ROW(1) IN FRAME {&FRAME-NAME}.
  1083. END.
  1084. APPLY 'VALUE-CHANGED' TO BROWSE Br_Druckername.
  1085. RUN LIBILD.
  1086. F_Zeichen = Breite.
  1087. F_Sort = Listen.Sort.
  1088. F_TZZ = LiDruck.Listtzz.
  1089. F_KZZ = LiDruck.Listkzz.
  1090. F_FZZ = LiDruck.Listfzz.
  1091. F_LQ = LiDruck.Listlq.
  1092. F_KOPIE = LiDruck.ListCopy.
  1093. F_SCHACHT = LiDruck.Schacht.
  1094. OBreite = Breite.
  1095. RUN dispatch IN THIS-PROCEDURE ('display-fields':U).
  1096. END PROCEDURE.
  1097. /* _UIB-CODE-BLOCK-END */
  1098. &ANALYZE-RESUME
  1099. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-open-query B-table-Win
  1100. PROCEDURE local-open-query :
  1101. /*------------------------------------------------------------------------------
  1102. Purpose: Override standard ADM method
  1103. Notes:
  1104. ------------------------------------------------------------------------------*/
  1105. IF FOpen = FALSE THEN RETURN NO-APPLY.
  1106. IF QOpen = TRUE THEN DO:
  1107. CLOSE QUERY Br_Druckername.
  1108. CLOSE QUERY Br_Schriftbild.
  1109. END.
  1110. QOpen = FALSE.
  1111. FOR EACH XSchrift:
  1112. DELETE XSchrift.
  1113. END.
  1114. AltSchname = ''.
  1115. FOR EACH Schrift NO-LOCK:
  1116. IF Schrift.Schname = AltSchname THEN NEXT.
  1117. CREATE XSchrift.
  1118. BUFFER-COPY Schrift TO XSchrift.
  1119. AltSchname = Schrift.Schname.
  1120. END.
  1121. OPEN QUERY Br_Druckername
  1122. FOR EACH XSchrift NO-LOCK.
  1123. QOpen = TRUE.
  1124. END PROCEDURE.
  1125. /* _UIB-CODE-BLOCK-END */
  1126. &ANALYZE-RESUME
  1127. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-row-changed B-table-Win
  1128. PROCEDURE local-row-changed :
  1129. /*------------------------------------------------------------------------------
  1130. Purpose: Override standard ADM method
  1131. Notes:
  1132. ------------------------------------------------------------------------------*/
  1133. RUN dispatch IN THIS-PROCEDURE ( INPUT 'row-changed':U ) .
  1134. OPEN QUERY Br_Schriftbild
  1135. FOR EACH Schrift WHERE Schrift.Schname = XSchrift.Schname NO-LOCK.
  1136. IF AVAILABLE LiDruck THEN DO:
  1137. FIND BSchrift WHERE BSchrift.Schname = LiDruck.ListDru
  1138. AND BSchrift.Schbild = LiDruck.ListBild NO-LOCK NO-ERROR.
  1139. IF AVAILABLE BSchrift THEN DO:
  1140. REPOSITION Br_Schriftbild TO RECID RECID(BSchrift) NO-ERROR.
  1141. END.
  1142. END.
  1143. APPLY 'VALUE-CHANGED' TO BROWSE Br_Schriftbild.
  1144. END PROCEDURE.
  1145. /* _UIB-CODE-BLOCK-END */
  1146. &ANALYZE-RESUME
  1147. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-view B-table-Win
  1148. PROCEDURE local-view :
  1149. /*------------------------------------------------------------------------------
  1150. Purpose: Override standard ADM method
  1151. Notes:
  1152. ------------------------------------------------------------------------------*/
  1153. RUN dispatch IN THIS-PROCEDURE ( INPUT 'view':U ) .
  1154. IF ARecid < 0 THEN RETURN.
  1155. DO TRANSACTION:
  1156. FIND Listen WHERE RECID(Listen) = ARecid.
  1157. ASSIGN Listen.VNr[01] = XVAufnr
  1158. Listen.BNr[01] = XVAufnr.
  1159. RELEASE Listen.
  1160. END.
  1161. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  1162. RUN dispatch IN THIS-PROCEDURE ('display-fields':U).
  1163. END PROCEDURE.
  1164. /* _UIB-CODE-BLOCK-END */
  1165. &ANALYZE-RESUME
  1166. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records B-table-Win _ADM-SEND-RECORDS
  1167. PROCEDURE send-records :
  1168. /*------------------------------------------------------------------------------
  1169. Purpose: Send record ROWID's for all tables used by
  1170. this file.
  1171. Parameters: see template/snd-head.i
  1172. ------------------------------------------------------------------------------*/
  1173. /* Define variables needed by this internal procedure. */
  1174. {src/adm/template/snd-head.i}
  1175. /* For each requested table, put it's ROWID in the output list. */
  1176. {src/adm/template/snd-list.i "Schrift"}
  1177. {src/adm/template/snd-list.i "XSchrift"}
  1178. /* Deal with any unexpected table requests before closing. */
  1179. {src/adm/template/snd-end.i}
  1180. END PROCEDURE.
  1181. /* _UIB-CODE-BLOCK-END */
  1182. &ANALYZE-RESUME
  1183. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE state-changed B-table-Win
  1184. PROCEDURE state-changed :
  1185. /* -----------------------------------------------------------
  1186. Purpose:
  1187. Parameters: <none>
  1188. Notes:
  1189. -------------------------------------------------------------*/
  1190. DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO.
  1191. DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO.
  1192. CASE p-state:
  1193. /* Object instance CASEs can go here to replace standard behavior
  1194. or add new cases. */
  1195. {src/adm/template/bstates.i}
  1196. END CASE.
  1197. END PROCEDURE.
  1198. /* _UIB-CODE-BLOCK-END */
  1199. &ANALYZE-RESUME