b-p_bestvorschlag.w 65 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884
  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. DEFINE VARIABLE AltSchname LIKE Schrift.Schname NO-UNDO.
  31. DEFINE VARIABLE QOpen AS LOG NO-UNDO.
  32. DEFINE VARIABLE FOpen AS LOG NO-UNDO.
  33. DEFINE VARIABLE OBreite AS INTEGER.
  34. DEFINE VARIABLE VProgname AS CHARACTER NO-UNDO.
  35. DEFINE VARIABLE XArtnr LIKE Artst.Artnr.
  36. DEFINE VARIABLE ARecid AS RECID INIT -1 NO-UNDO.
  37. DEFINE VARIABLE BRecid AS RECID INIT -1 NO-UNDO.
  38. DEFINE VARIABLE FInit AS LOG NO-UNDO.
  39. DEFINE VARIABLE VBesko AS LOG NO-UNDO.
  40. DEFINE VARIABLE VBesnr AS INTEGER NO-UNDO.
  41. DEFINE VARIABLE VPos AS INTEGER NO-UNDO.
  42. DEFINE VARIABLE iLager AS INTEGER NO-UNDO.
  43. /* ------------------------------------------------------------------------- */
  44. DEFINE VARIABLE VArtnr LIKE Artst.Artnr NO-UNDO.
  45. DEFINE VARIABLE BArtnr LIKE Artst.Artnr NO-UNDO.
  46. DEFINE VARIABLE VWgr AS CHARACTER NO-UNDO.
  47. DEFINE VARIABLE VHerst AS CHARACTER NO-UNDO.
  48. DEFINE VARIABLE VKnr LIKE Debst.Knr NO-UNDO.
  49. DEFINE VARIABLE BKnr LIKE Debst.Knr NO-UNDO.
  50. DEFINE VARIABLE FUnter AS LOG NO-UNDO.
  51. DEFINE VARIABLE FLeer AS LOG NO-UNDO.
  52. DEFINE VARIABLE XWgr AS CHARACTER FORMAT "x(30)" NO-UNDO.
  53. DEFINE VARIABLE XPgr AS CHARACTER FORMAT "x(30)" NO-UNDO.
  54. DEFINE VARIABLE XAgr AS CHARACTER FORMAT "x(30)" NO-UNDO.
  55. DEFINE VARIABLE XStern AS CHARACTER FORMAT "x" NO-UNDO.
  56. DEFINE VARIABLE cDrucker AS CHARACTER NO-UNDO.
  57. DEFINE VARIABLE VTotal0 AS DECIMAL EXTENT 10.
  58. DEFINE VARIABLE VTotal1 AS DECIMAL EXTENT 10.
  59. DEFINE VARIABLE VZeile AS CHARACTER FORMAT "x(180)".
  60. DEFINE VARIABLE RRand AS INTEGER INIT 0.
  61. DEFINE BUFFER BArtLief FOR ArtLief.
  62. DEFINE BUFFER BArtst FOR Artst.
  63. DEFINE BUFFER BAdresse FOR Adresse.
  64. /* ---------- Globale Variablen ---------------------------------- */
  65. { v8/globvar.i" " " " "SHARED" }
  66. { v8/debivar.i " " " " "SHARED" }
  67. { v8/artivar.i " " " " "SHARED" }
  68. { v8/contvar.i " " " " "SHARED" }
  69. { v8/listtitv.i "NEW" "SHARED" }
  70. /* _UIB-CODE-BLOCK-END */
  71. &ANALYZE-RESUME
  72. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  73. /* ******************** Preprocessor Definitions ******************** */
  74. &Scoped-define PROCEDURE-TYPE SmartBrowser
  75. &Scoped-define DB-AWARE no
  76. &Scoped-define ADM-SUPPORTED-LINKS Record-Source,Record-Target,TableIO-Target
  77. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  78. &Scoped-define FRAME-NAME F-Main
  79. &Scoped-define BROWSE-NAME Br_Druckername
  80. /* Internal Tables (found by Frame, Query & Browse Queries) */
  81. &Scoped-define INTERNAL-TABLES XSchrift Schrift
  82. /* Definitions for BROWSE Br_Druckername */
  83. &Scoped-define FIELDS-IN-QUERY-Br_Druckername XSchrift.Schname
  84. &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Druckername
  85. &Scoped-define QUERY-STRING-Br_Druckername FOR EACH XSchrift NO-LOCK ~
  86. BY XSchrift.Schname
  87. &Scoped-define OPEN-QUERY-Br_Druckername OPEN QUERY Br_Druckername FOR EACH XSchrift NO-LOCK ~
  88. BY XSchrift.Schname.
  89. &Scoped-define TABLES-IN-QUERY-Br_Druckername XSchrift
  90. &Scoped-define FIRST-TABLE-IN-QUERY-Br_Druckername XSchrift
  91. /* Definitions for BROWSE Br_Schriftbild */
  92. &Scoped-define FIELDS-IN-QUERY-Br_Schriftbild Schrift.Schbild
  93. &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Schriftbild
  94. &Scoped-define QUERY-STRING-Br_Schriftbild FOR EACH Schrift NO-LOCK ~
  95. BY Schrift.Schbild
  96. &Scoped-define OPEN-QUERY-Br_Schriftbild OPEN QUERY Br_Schriftbild FOR EACH Schrift NO-LOCK ~
  97. BY Schrift.Schbild.
  98. &Scoped-define TABLES-IN-QUERY-Br_Schriftbild Schrift
  99. &Scoped-define FIRST-TABLE-IN-QUERY-Br_Schriftbild Schrift
  100. /* Definitions for FRAME F-Main */
  101. /* Standard List Definitions */
  102. &Scoped-Define ENABLED-FIELDS Listen.VNr[1] Listen.BNr[1] Listen.ECh[1] ~
  103. Listen.ECh[2] Listen.VNr[4] Listen.BNr[4] Listen.VFl[1] Listen.VFl[2]
  104. &Scoped-define ENABLED-TABLES Listen
  105. &Scoped-define FIRST-ENABLED-TABLE Listen
  106. &Scoped-Define ENABLED-OBJECTS RECT-10 RECT-11 RECT-12 RECT-13 RECT-17 ~
  107. Br_Druckername Br_Schriftbild F_USER F_Programm F_Zeichen F_Sort F_TZZ ~
  108. F_KZZ F_FZZ F_LQ F_KOPIE F_SCHACHT CB_Lager Btn_Start Btn_Ende Btn_Excel
  109. &Scoped-Define DISPLAYED-FIELDS Listen.VNr[1] Listen.BNr[1] Listen.ECh[1] ~
  110. Listen.ECh[2] Listen.VNr[4] Listen.BNr[4] Listen.VFl[1] Listen.VFl[2]
  111. &Scoped-define DISPLAYED-TABLES Listen
  112. &Scoped-define FIRST-DISPLAYED-TABLE Listen
  113. &Scoped-Define DISPLAYED-OBJECTS F_USER F_Programm F_Zeichen F_Sort F_TZZ ~
  114. F_KZZ F_FZZ F_LQ F_KOPIE F_SCHACHT CB_Lager
  115. /* Custom List Definitions */
  116. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  117. &Scoped-define List-1 F_USER F_Programm F_Zeichen F_Sort F_TZZ F_KZZ F_FZZ ~
  118. F_LQ F_KOPIE F_SCHACHT
  119. &Scoped-define List-2 Listen.VNr[1] Listen.BNr[1] Listen.ECh[1] ~
  120. Listen.ECh[2] Listen.VNr[4] Listen.BNr[4] Listen.VFl[1] Listen.VFl[2]
  121. /* _UIB-PREPROCESSOR-BLOCK-END */
  122. &ANALYZE-RESUME
  123. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Foreign Keys" B-table-Win _INLINE
  124. /* Actions: ? adm/support/keyedit.w ? ? ? */
  125. /* STRUCTURED-DATA
  126. <KEY-OBJECT>
  127. &BROWSE-NAME
  128. </KEY-OBJECT>
  129. <FOREIGN-KEYS>
  130. </FOREIGN-KEYS
  131. ><EXECUTING-CODE>
  132. **************************
  133. * Set attributes related to FOREIGN KEYS
  134. */
  135. RUN set-attribute-list (
  136. 'Keys-Accepted = "",
  137. Keys-Supplied = ""':U).
  138. /**************************
  139. </EXECUTING-CODE> */
  140. /* _UIB-CODE-BLOCK-END */
  141. &ANALYZE-RESUME
  142. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Advanced Query Options" B-table-Win _INLINE
  143. /* Actions: ? adm/support/advqedit.w ? ? ? */
  144. /* STRUCTURED-DATA
  145. <KEY-OBJECT>
  146. &BROWSE-NAME
  147. </KEY-OBJECT>
  148. <SORTBY-OPTIONS>
  149. </SORTBY-OPTIONS>
  150. <SORTBY-RUN-CODE>
  151. ************************
  152. * Set attributes related to SORTBY-OPTIONS */
  153. RUN set-attribute-list (
  154. 'SortBy-Options = ""':U).
  155. /************************
  156. </SORTBY-RUN-CODE>
  157. <FILTER-ATTRIBUTES>
  158. </FILTER-ATTRIBUTES> */
  159. /* _UIB-CODE-BLOCK-END */
  160. &ANALYZE-RESUME
  161. /* *********************** Control Definitions ********************** */
  162. /* Definitions of the field level widgets */
  163. DEFINE BUTTON Btn_Ende
  164. LABEL "&Ende"
  165. SIZE 14 BY 1.24.
  166. DEFINE BUTTON Btn_Excel
  167. LABEL "E&xcel"
  168. SIZE 14 BY 1.24.
  169. DEFINE BUTTON Btn_Start
  170. LABEL "&Starten"
  171. SIZE 14 BY 1.24.
  172. DEFINE VARIABLE CB_Lager AS CHARACTER FORMAT "X(256)":U
  173. LABEL "Lager"
  174. VIEW-AS COMBO-BOX INNER-LINES 5
  175. LIST-ITEM-PAIRS "Item 1","Item 1"
  176. DROP-DOWN-LIST
  177. SIZE 31.8 BY 1 NO-UNDO.
  178. DEFINE VARIABLE F_FZZ AS INTEGER FORMAT "999":U INITIAL 0
  179. LABEL "Fusszeilen"
  180. VIEW-AS FILL-IN NATIVE
  181. SIZE 7 BY 1.05 TOOLTIP "Wieviele Zeilen müssen am Ende der Seite leer bleiben"
  182. BGCOLOR 15 NO-UNDO.
  183. DEFINE VARIABLE F_KOPIE AS INTEGER FORMAT "9":U INITIAL 0
  184. LABEL "Anz. Kopien"
  185. VIEW-AS FILL-IN NATIVE
  186. SIZE 4.2 BY 1.05 TOOLTIP "Anzahl Listenkopien"
  187. BGCOLOR 15 NO-UNDO.
  188. DEFINE VARIABLE F_KZZ AS INTEGER FORMAT "999":U INITIAL 0
  189. LABEL "Kopfzeilen"
  190. VIEW-AS FILL-IN NATIVE
  191. SIZE 7 BY 1.05 TOOLTIP "Wieviele leere Kopfzeilen müssen gedruckt werden"
  192. BGCOLOR 15 NO-UNDO.
  193. DEFINE VARIABLE F_LQ AS LOGICAL FORMAT "j/n":U INITIAL NO
  194. LABEL "Schönschrift"
  195. VIEW-AS FILL-IN NATIVE
  196. SIZE 4.2 BY 1.05 TOOLTIP "Wieviele Zeilen müssen am Ende der Seite leer bleiben"
  197. BGCOLOR 15 NO-UNDO.
  198. DEFINE VARIABLE F_Programm AS CHARACTER FORMAT "X(20)":U INITIAL "BESTVOR"
  199. LABEL "Programm"
  200. VIEW-AS FILL-IN NATIVE
  201. SIZE 18 BY 1
  202. BGCOLOR 15 NO-UNDO.
  203. DEFINE VARIABLE F_SCHACHT AS INTEGER FORMAT "9":U INITIAL 0
  204. LABEL "Schacht"
  205. VIEW-AS FILL-IN NATIVE
  206. SIZE 4.2 BY 1.05 TOOLTIP "Welcher Schacht muss angesteuer werden"
  207. BGCOLOR 15 NO-UNDO.
  208. DEFINE VARIABLE F_TZZ AS INTEGER FORMAT "999":U INITIAL 0
  209. LABEL "Zeilen"
  210. VIEW-AS FILL-IN NATIVE
  211. SIZE 7 BY 1.05 TOOLTIP "Wieviele Zeilen hat die ganze Seite"
  212. BGCOLOR 15 NO-UNDO.
  213. DEFINE VARIABLE F_USER AS CHARACTER FORMAT "X(20)":U
  214. LABEL "Benutzer"
  215. VIEW-AS FILL-IN NATIVE
  216. SIZE 18 BY 1
  217. BGCOLOR 15 NO-UNDO.
  218. DEFINE VARIABLE F_Zeichen AS INTEGER FORMAT "zzz,zzz,zz9":U INITIAL 0
  219. LABEL "Anz. Zeichen"
  220. VIEW-AS FILL-IN NATIVE
  221. SIZE 18 BY 1
  222. BGCOLOR 15 NO-UNDO.
  223. DEFINE VARIABLE F_Sort AS INTEGER
  224. VIEW-AS RADIO-SET VERTICAL
  225. RADIO-BUTTONS
  226. "Lieferant/Warengruppe", 1
  227. SIZE 35.2 BY 2.57 NO-UNDO.
  228. DEFINE RECTANGLE RECT-10
  229. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  230. SIZE 40 BY 4.14.
  231. DEFINE RECTANGLE RECT-11
  232. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  233. SIZE 78 BY 9.05.
  234. DEFINE RECTANGLE RECT-12
  235. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  236. SIZE 40 BY 3.81.
  237. DEFINE RECTANGLE RECT-13
  238. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  239. SIZE 139.8 BY 1.81.
  240. DEFINE RECTANGLE RECT-17
  241. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  242. SIZE 144 BY 21.43.
  243. /* Query definitions */
  244. &ANALYZE-SUSPEND
  245. DEFINE QUERY Br_Druckername FOR
  246. XSchrift SCROLLING.
  247. DEFINE QUERY Br_Schriftbild FOR
  248. Schrift SCROLLING.
  249. &ANALYZE-RESUME
  250. /* Browse definitions */
  251. DEFINE BROWSE Br_Druckername
  252. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Druckername B-table-Win _STRUCTURED
  253. QUERY Br_Druckername NO-LOCK DISPLAY
  254. XSchrift.Schname COLUMN-LABEL "Drucker" FORMAT "x(30)":U
  255. /* _UIB-CODE-BLOCK-END */
  256. &ANALYZE-RESUME
  257. WITH NO-ASSIGN NO-ROW-MARKERS SEPARATORS SIZE 36 BY 8.57
  258. BGCOLOR 15 .
  259. DEFINE BROWSE Br_Schriftbild
  260. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Schriftbild B-table-Win _STRUCTURED
  261. QUERY Br_Schriftbild DISPLAY
  262. Schrift.Schbild FORMAT "x(30)":U
  263. /* _UIB-CODE-BLOCK-END */
  264. &ANALYZE-RESUME
  265. WITH NO-ROW-MARKERS SEPARATORS SIZE 36 BY 8.57
  266. BGCOLOR 15 .
  267. /* ************************ Frame Definitions *********************** */
  268. DEFINE FRAME F-Main
  269. Br_Druckername AT ROW 1.71 COL 4
  270. Br_Schriftbild AT ROW 1.71 COL 43
  271. F_USER AT ROW 2.1 COL 98.8 COLON-ALIGNED
  272. F_Programm AT ROW 3.19 COL 98.8 COLON-ALIGNED
  273. F_Zeichen AT ROW 4.33 COL 98.8 COLON-ALIGNED
  274. F_Sort AT ROW 6.43 COL 84 NO-LABELS
  275. F_TZZ AT ROW 11.57 COL 11.4 COLON-ALIGNED
  276. F_KZZ AT ROW 11.57 COL 33.8 COLON-ALIGNED
  277. F_FZZ AT ROW 11.57 COL 57.6 COLON-ALIGNED
  278. F_LQ AT ROW 11.57 COL 82.8 COLON-ALIGNED
  279. F_KOPIE AT ROW 11.57 COL 105.2 COLON-ALIGNED
  280. F_SCHACHT AT ROW 11.57 COL 122 COLON-ALIGNED
  281. CB_Lager AT ROW 13.52 COL 26 COLON-ALIGNED WIDGET-ID 2
  282. Btn_Start AT ROW 14.14 COL 126.8
  283. Listen.VNr[1] AT ROW 14.52 COL 26 COLON-ALIGNED HELP
  284. ""
  285. LABEL "von - bis Artikelnr." FORMAT "999999"
  286. VIEW-AS FILL-IN NATIVE
  287. SIZE 12.6 BY 1.05
  288. BGCOLOR 15
  289. Listen.BNr[1] AT ROW 14.52 COL 45.2 COLON-ALIGNED HELP
  290. ""
  291. LABEL "-" FORMAT "999999"
  292. VIEW-AS FILL-IN NATIVE
  293. SIZE 12.6 BY 1.05
  294. BGCOLOR 15
  295. Listen.ECh[1] AT ROW 15.52 COL 26 COLON-ALIGNED
  296. LABEL "Warengruppen" FORMAT "x(250)"
  297. VIEW-AS FILL-IN NATIVE
  298. SIZE 51.8 BY 1
  299. BGCOLOR 15
  300. Btn_Ende AT ROW 15.67 COL 126.8
  301. Listen.ECh[2] AT ROW 16.52 COL 26 COLON-ALIGNED
  302. LABEL "Hersteller" FORMAT "x(250)"
  303. VIEW-AS FILL-IN NATIVE
  304. SIZE 51.8 BY 1
  305. BGCOLOR 15
  306. Btn_Excel AT ROW 17.14 COL 126.8
  307. Listen.VNr[4] AT ROW 17.52 COL 26 COLON-ALIGNED
  308. LABEL "von - bis Lieferant" FORMAT "999999"
  309. VIEW-AS FILL-IN NATIVE
  310. SIZE 12.6 BY 1
  311. BGCOLOR 15
  312. Listen.BNr[4] AT ROW 17.52 COL 45.2 COLON-ALIGNED
  313. LABEL "-" FORMAT "999999"
  314. VIEW-AS FILL-IN NATIVE
  315. SIZE 12.6 BY 1
  316. BGCOLOR 15
  317. Listen.VFl[1] AT ROW 18.52 COL 28
  318. LABEL "Nur unterschrittene"
  319. VIEW-AS TOGGLE-BOX
  320. SIZE 28 BY 1
  321. Listen.VFl[2] AT ROW 19.52 COL 28
  322. LABEL "Bestellung erfassen"
  323. VIEW-AS TOGGLE-BOX
  324. SIZE 28.2 BY 1
  325. RECT-10 AT ROW 1.48 COL 82.6
  326. RECT-11 AT ROW 1.48 COL 3
  327. RECT-12 AT ROW 6 COL 83
  328. RECT-13 AT ROW 11.14 COL 3.8
  329. RECT-17 AT ROW 1.24 COL 2
  330. WITH 1 DOWN KEEP-TAB-ORDER OVERLAY
  331. SIDE-LABELS NO-UNDERLINE THREE-D
  332. AT COL 1 ROW 1 SCROLLABLE .
  333. /* *********************** Procedure Settings ************************ */
  334. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  335. /* Settings for THIS-PROCEDURE
  336. Type: SmartBrowser
  337. Allow: Basic,Browse
  338. Frames: 1
  339. Add Fields to: EXTERNAL-TABLES
  340. Other Settings: PERSISTENT-ONLY
  341. Temp-Tables and Buffers:
  342. TABLE: XSchrift T "?" NO-UNDO AnaDat Schrift
  343. TABLE: XTermOut T "NEW SHARED" NO-UNDO AnaDat TermOut
  344. END-TABLES.
  345. */
  346. /* This procedure should always be RUN PERSISTENT. Report the error, */
  347. /* then cleanup and return. */
  348. IF NOT THIS-PROCEDURE:PERSISTENT THEN
  349. DO:
  350. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  351. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  352. RETURN.
  353. END.
  354. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  355. /* ************************* Create Window ************************** */
  356. &ANALYZE-SUSPEND _CREATE-WINDOW
  357. /* DESIGN Window definition (used by the UIB)
  358. CREATE WINDOW B-table-Win ASSIGN
  359. HEIGHT = 22.05
  360. WIDTH = 146.
  361. /* END WINDOW DEFINITION */
  362. */
  363. &ANALYZE-RESUME
  364. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB B-table-Win
  365. /* ************************* Included-Libraries *********************** */
  366. {src/adm/method/browser.i}
  367. /* _UIB-CODE-BLOCK-END */
  368. &ANALYZE-RESUME
  369. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  370. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  371. /* SETTINGS FOR WINDOW B-table-Win
  372. NOT-VISIBLE,,RUN-PERSISTENT */
  373. /* SETTINGS FOR FRAME F-Main
  374. NOT-VISIBLE FRAME-NAME Size-to-Fit */
  375. /* BROWSE-TAB Br_Druckername RECT-17 F-Main */
  376. /* BROWSE-TAB Br_Schriftbild Br_Druckername F-Main */
  377. ASSIGN
  378. FRAME F-Main:SCROLLABLE = FALSE
  379. FRAME F-Main:HIDDEN = TRUE.
  380. /* SETTINGS FOR FILL-IN Listen.BNr[1] IN FRAME F-Main
  381. 2 EXP-LABEL EXP-FORMAT EXP-HELP */
  382. /* SETTINGS FOR FILL-IN Listen.BNr[4] IN FRAME F-Main
  383. 2 EXP-LABEL EXP-FORMAT */
  384. /* SETTINGS FOR FILL-IN Listen.ECh[1] IN FRAME F-Main
  385. 2 EXP-LABEL EXP-FORMAT */
  386. /* SETTINGS FOR FILL-IN Listen.ECh[2] IN FRAME F-Main
  387. 2 EXP-LABEL EXP-FORMAT */
  388. /* SETTINGS FOR FILL-IN F_FZZ IN FRAME F-Main
  389. 1 */
  390. /* SETTINGS FOR FILL-IN F_KOPIE IN FRAME F-Main
  391. 1 */
  392. /* SETTINGS FOR FILL-IN F_KZZ IN FRAME F-Main
  393. 1 */
  394. /* SETTINGS FOR FILL-IN F_LQ IN FRAME F-Main
  395. 1 */
  396. /* SETTINGS FOR FILL-IN F_Programm IN FRAME F-Main
  397. 1 */
  398. /* SETTINGS FOR FILL-IN F_SCHACHT IN FRAME F-Main
  399. 1 */
  400. /* SETTINGS FOR RADIO-SET F_Sort IN FRAME F-Main
  401. 1 */
  402. /* SETTINGS FOR FILL-IN F_TZZ IN FRAME F-Main
  403. 1 */
  404. /* SETTINGS FOR FILL-IN F_USER IN FRAME F-Main
  405. 1 */
  406. /* SETTINGS FOR FILL-IN F_Zeichen IN FRAME F-Main
  407. 1 */
  408. /* SETTINGS FOR TOGGLE-BOX Listen.VFl[1] IN FRAME F-Main
  409. 2 EXP-LABEL */
  410. /* SETTINGS FOR TOGGLE-BOX Listen.VFl[2] IN FRAME F-Main
  411. 2 EXP-LABEL */
  412. /* SETTINGS FOR FILL-IN Listen.VNr[1] IN FRAME F-Main
  413. 2 EXP-LABEL EXP-FORMAT EXP-HELP */
  414. /* SETTINGS FOR FILL-IN Listen.VNr[4] IN FRAME F-Main
  415. 2 EXP-LABEL EXP-FORMAT */
  416. /* _RUN-TIME-ATTRIBUTES-END */
  417. &ANALYZE-RESUME
  418. /* Setting information for Queries and Browse Widgets fields */
  419. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Druckername
  420. /* Query rebuild information for BROWSE Br_Druckername
  421. _TblList = "Temp-Tables.XSchrift"
  422. _Options = "NO-LOCK"
  423. _OrdList = "Temp-Tables.XSchrift.Schname|yes"
  424. _FldNameList[1] > Temp-Tables.XSchrift.Schname
  425. "XSchrift.Schname" "Drucker" ? "character" ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  426. _Query is NOT OPENED
  427. */ /* BROWSE Br_Druckername */
  428. &ANALYZE-RESUME
  429. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Schriftbild
  430. /* Query rebuild information for BROWSE Br_Schriftbild
  431. _TblList = "AnaDat.Schrift"
  432. _OrdList = "AnaDat.Schrift.Schbild|yes"
  433. _FldNameList[1] = AnaDat.Schrift.Schbild
  434. _Query is NOT OPENED
  435. */ /* BROWSE Br_Schriftbild */
  436. &ANALYZE-RESUME
  437. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  438. /* Query rebuild information for FRAME F-Main
  439. _Options = "NO-LOCK"
  440. _Query is NOT OPENED
  441. */ /* FRAME F-Main */
  442. &ANALYZE-RESUME
  443. /* ************************ Control Triggers ************************ */
  444. &Scoped-define SELF-NAME F-Main
  445. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F-Main B-table-Win
  446. ON GO OF FRAME F-Main
  447. DO:
  448. DO TRANSACTION:
  449. FIND Listen WHERE RECID(Listen) = ARecid.
  450. Listen.Listfl = ''.
  451. END.
  452. RUN new-state ('drucken_ende':U).
  453. END.
  454. /* _UIB-CODE-BLOCK-END */
  455. &ANALYZE-RESUME
  456. &Scoped-define BROWSE-NAME Br_Druckername
  457. &Scoped-define SELF-NAME Br_Druckername
  458. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
  459. ON ROW-ENTRY OF Br_Druckername IN FRAME F-Main
  460. DO:
  461. /* This code displays initial values for newly added or copied rows. */
  462. {src/adm/template/brsentry.i}
  463. END.
  464. /* _UIB-CODE-BLOCK-END */
  465. &ANALYZE-RESUME
  466. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
  467. ON ROW-LEAVE OF Br_Druckername IN FRAME F-Main
  468. DO:
  469. /* Do not disable this code or no updates will take place except
  470. by pressing the Save button on an Update SmartPanel. */
  471. {src/adm/template/brsleave.i}
  472. END.
  473. /* _UIB-CODE-BLOCK-END */
  474. &ANALYZE-RESUME
  475. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
  476. ON VALUE-CHANGED OF Br_Druckername IN FRAME F-Main
  477. DO:
  478. DEFINE VARIABLE VRecid AS RECID NO-UNDO.
  479. {src/adm/template/brschnge.i}
  480. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  481. ASchname = XSchrift.Schname.
  482. RUN dispatch IN THIS-PROCEDURE ('open-query':U).
  483. IF NUM-RESULTS('Br_Schriftbild':U) = ? THEN LEAVE.
  484. IF NUM-RESULTS('Br_Schriftbild':U) = 0 THEN LEAVE.
  485. FIND FIRST BSchrift WHERE BSchrift.Schname = ASchname
  486. AND BSchrift.Schbild = ASchbild NO-LOCK NO-ERROR.
  487. IF AVAILABLE BSchrift THEN VRecid = RECID(BSchrift).
  488. ELSE
  489. DO:
  490. GET FIRST Br_Schriftbild.
  491. VRecid = RECID(Schrift).
  492. END.
  493. REPOSITION Br_Schriftbild TO RECID(VRecid).
  494. ASchbild = Schrift.Schbild.
  495. LEAVE.
  496. END.
  497. END.
  498. /* _UIB-CODE-BLOCK-END */
  499. &ANALYZE-RESUME
  500. &Scoped-define BROWSE-NAME Br_Schriftbild
  501. &Scoped-define SELF-NAME Br_Schriftbild
  502. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
  503. ON ROW-ENTRY OF Br_Schriftbild IN FRAME F-Main
  504. DO:
  505. /* This code displays initial values for newly added or copied rows. */
  506. {src/adm/template/brsentry.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 ROW-LEAVE OF Br_Schriftbild IN FRAME F-Main
  512. DO:
  513. /* Do not disable this code or no updates will take place except
  514. by pressing the Save button on an Update SmartPanel. */
  515. {src/adm/template/brsleave.i}
  516. END.
  517. /* _UIB-CODE-BLOCK-END */
  518. &ANALYZE-RESUME
  519. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
  520. ON VALUE-CHANGED OF Br_Schriftbild IN FRAME F-Main
  521. DO:
  522. {src/adm/template/brschnge.i}
  523. IF ASchbild <> Schrift.Schbild THEN
  524. DO:
  525. ASSIGN
  526. F_TZZ = Schrift.Schzztot
  527. F_KZZ = Schrift.Schzzbeg
  528. F_FZZ = Schrift.Schzzend.
  529. DISPLAY {&List-1} WITH FRAME {&FRAME-NAME}.
  530. END.
  531. ASchbild = Schrift.Schbild.
  532. END.
  533. /* _UIB-CODE-BLOCK-END */
  534. &ANALYZE-RESUME
  535. &Scoped-define SELF-NAME Btn_Ende
  536. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Ende B-table-Win
  537. ON CHOOSE OF Btn_Ende IN FRAME F-Main /* Ende */
  538. DO:
  539. DO TRANSACTION:
  540. FIND Listen WHERE RECID(Listen) = ARecid.
  541. Listen.Listfl = ''.
  542. END.
  543. { v8/druck_ende.i }
  544. RUN new-state ('Seite_1':U).
  545. APPLY 'GO' TO FRAME {&FRAME-NAME}.
  546. END.
  547. /* _UIB-CODE-BLOCK-END */
  548. &ANALYZE-RESUME
  549. &Scoped-define SELF-NAME Btn_Excel
  550. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Excel B-table-Win
  551. ON CHOOSE OF Btn_Excel IN FRAME F-Main /* Excel */
  552. DO:
  553. RUN EXCEL.
  554. RUN new-state ('Seite_1':U).
  555. APPLY 'GO' TO FRAME {&FRAME-NAME}.
  556. END.
  557. /* _UIB-CODE-BLOCK-END */
  558. &ANALYZE-RESUME
  559. &Scoped-define SELF-NAME Btn_Start
  560. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Start B-table-Win
  561. ON CHOOSE OF Btn_Start IN FRAME F-Main /* Starten */
  562. DO:
  563. DO TRANSACTION WITH FRAME {&FRAME-NAME}:
  564. ASSIGN {&List-1}.
  565. i1 = Br_Druckername:NUM-SELECTED-ROWS.
  566. IF i1 = 0 THEN RETURN NO-APPLY.
  567. Br_Druckername:FETCH-SELECTED-ROW(1).
  568. i1 = Br_Schriftbild:NUM-SELECTED-ROWS.
  569. IF i1 = 0 THEN RETURN NO-APPLY.
  570. Br_Schriftbild:FETCH-SELECTED-ROW(1).
  571. iLager = INTEGER(CB_Lager:SCREEN-VALUE).
  572. FIND Listen WHERE RECID(Listen) = ARecid.
  573. FIND LiDruck WHERE RECID(LiDruck) = BRecid.
  574. ASSIGN
  575. Breite = F_Zeichen
  576. Listen.Sort = F_Sort
  577. Listen.ProgWahl = F_Sort
  578. LiDruck.Listtzz = F_TZZ
  579. LiDruck.Listkzz = F_KZZ
  580. LiDruck.Listfzz = F_FZZ
  581. LiDruck.Listlq = F_LQ
  582. LiDruck.ListCopy = F_KOPIE
  583. LiDruck.Schacht = F_SCHACHT
  584. LiDruck.Listdru = XSchrift.Schname
  585. LiDruck.Listbild = Schrift.Schbild.
  586. IF LiDruck.ListCopy = 0 THEN LiDruck.ListCopy = 1.
  587. ASSIGN {&List-2}.
  588. IF VNr[01] = 0 AND BNr[01] = 0 THEN BNr[01] = 999999.
  589. IF VNr[01] > BNr[01] THEN BNr[01] = VNr[01].
  590. IF VNr[02] = 0 AND BNr[02] = 0 THEN BNr[02] = 99.
  591. IF VNr[02] > BNr[02] THEN BNr[02] = VNr[02].
  592. IF VNr[03] = 0 AND BNr[03] = 0 THEN BNr[03] = 99.
  593. IF VNr[03] > BNr[03] THEN BNr[03] = VNr[03].
  594. IF VNr[04] = 0 AND BNr[04] = 0 THEN BNr[04] = 999999.
  595. IF VNr[04] > BNr[04] THEN BNr[04] = VNr[04].
  596. IF VNr[05] = 0 AND BNr[05] = 0 THEN BNr[05] = 99.
  597. IF VNr[05] > BNr[05] THEN BNr[05] = VNr[05].
  598. DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
  599. ASSIGN
  600. LiDruck.ProgWahl = Listen.ProgWahl
  601. LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99').
  602. RELEASE Listen .
  603. RELEASE LiDruck.
  604. END.
  605. FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
  606. FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
  607. DISABLE Btn_Start WITH FRAME {&FRAME-NAME}.
  608. DISABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
  609. RUN LIBILD.
  610. RUN DRUCKEN.
  611. DO TRANSACTION WITH FRAME {&FRAME-NAME}:
  612. FIND Listen WHERE RECID(Listen) = ARecid.
  613. ASSIGN
  614. Listen.Listfl = ''.
  615. RELEASE Listen .
  616. END.
  617. FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
  618. ENABLE Btn_Start WITH FRAME {&FRAME-NAME}.
  619. ENABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
  620. RETURN NO-APPLY.
  621. END.
  622. /* _UIB-CODE-BLOCK-END */
  623. &ANALYZE-RESUME
  624. &Scoped-define SELF-NAME CB_Lager
  625. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Lager B-table-Win
  626. ON VALUE-CHANGED OF CB_Lager IN FRAME F-Main /* Lager */
  627. DO:
  628. iLager = INTEGER(SELF:SCREEN-VALUE).
  629. END.
  630. /* _UIB-CODE-BLOCK-END */
  631. &ANALYZE-RESUME
  632. &Scoped-define SELF-NAME Listen.ECh[1]
  633. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Listen.ECh[1] B-table-Win
  634. ON LEFT-MOUSE-DBLCLICK OF Listen.ECh[1] IN FRAME F-Main /* Warengruppen */
  635. DO:
  636. Linktext = SELF:SCREEN-VALUE.
  637. RUN "v8/d-ausw-warengrp.w".
  638. SELF:SCREEN-VALUE = Linktext.
  639. Linktext = ''.
  640. END.
  641. /* _UIB-CODE-BLOCK-END */
  642. &ANALYZE-RESUME
  643. &Scoped-define SELF-NAME Listen.ECh[2]
  644. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Listen.ECh[2] B-table-Win
  645. ON LEFT-MOUSE-DBLCLICK OF Listen.ECh[2] IN FRAME F-Main /* Hersteller */
  646. DO:
  647. LVRecArt = 'HERST'.
  648. LVTitel = 'Hersteller'.
  649. LVFirma = GVFirma.
  650. Linktext = SELF:SCREEN-VALUE.
  651. RUN "v8/d-ausw-tabel.w".
  652. SELF:SCREEN-VALUE = Linktext.
  653. Linktext = ''.
  654. END.
  655. /* _UIB-CODE-BLOCK-END */
  656. &ANALYZE-RESUME
  657. &Scoped-define BROWSE-NAME Br_Druckername
  658. &UNDEFINE SELF-NAME
  659. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK B-table-Win
  660. /* *************************** Main Block *************************** */
  661. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  662. RUN dispatch IN THIS-PROCEDURE ('initialize':U).
  663. &ENDIF
  664. ON END-ERROR ANYWHERE
  665. DO:
  666. DO TRANSACTION:
  667. FIND Listen WHERE RECID(Listen) = ARecid.
  668. Listen.Listfl = ''.
  669. RELEASE Listen.
  670. END.
  671. END.
  672. /* _UIB-CODE-BLOCK-END */
  673. &ANALYZE-RESUME
  674. /* ********************** Internal Procedures *********************** */
  675. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available B-table-Win _ADM-ROW-AVAILABLE
  676. PROCEDURE adm-row-available :
  677. /*------------------------------------------------------------------------------
  678. Purpose: Dispatched to this procedure when the Record-
  679. Source has a new row available. This procedure
  680. tries to get the new row (or foriegn keys) from
  681. the Record-Source and process it.
  682. Parameters: <none>
  683. ------------------------------------------------------------------------------*/
  684. /* Define variables needed by this internal procedure. */
  685. {src/adm/template/row-head.i}
  686. /* Process the newly available records (i.e. display fields,
  687. open queries, and/or pass records on to any RECORD-TARGETS). */
  688. {src/adm/template/row-end.i}
  689. END PROCEDURE.
  690. /* _UIB-CODE-BLOCK-END */
  691. &ANALYZE-RESUME
  692. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI B-table-Win _DEFAULT-DISABLE
  693. PROCEDURE disable_UI :
  694. /*------------------------------------------------------------------------------
  695. Purpose: DISABLE the User Interface
  696. Parameters: <none>
  697. Notes: Here we clean-up the user-interface by deleting
  698. dynamic widgets we have created and/or hide
  699. frames. This procedure is usually called when
  700. we are ready to "clean-up" after running.
  701. ------------------------------------------------------------------------------*/
  702. /* Hide all frames. */
  703. HIDE FRAME F-Main.
  704. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  705. END PROCEDURE.
  706. /* _UIB-CODE-BLOCK-END */
  707. &ANALYZE-RESUME
  708. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DRUCKEN B-table-Win
  709. PROCEDURE DRUCKEN :
  710. /*------------------------------------------------------------------------------
  711. Purpose:
  712. Parameters: <none>
  713. Notes:
  714. ------------------------------------------------------------------------------*/
  715. FIND Steuer WHERE Steuer.Firma = GVFirma NO-LOCK NO-ERROR.
  716. VSort = Listen.Sort.
  717. VArtnr = Listen.VNr[01].
  718. BArtnr = Listen.BNr[01].
  719. VWgr = Listen.ECh[01].
  720. VHerst = Listen.ECh[02].
  721. VKnr = Listen.VNr[04].
  722. BKnr = Listen.BNr[04].
  723. FUnter = Listen.VFl[01].
  724. VBesko = Listen.VFl[02].
  725. DO WITH FRAME {&FRAME-NAME}:
  726. iLager = INTEGER(CB_Lager:SCREEN-VALUE).
  727. END.
  728. RUN LISTTIT1.
  729. DO PRESELECT
  730. EACH BArtLief USE-INDEX ArtLief-k2
  731. WHERE BArtLief.Firma = GVFirma
  732. AND BArtLief.Knr >= VKnr
  733. AND BArtLief.Knr <= BKnr
  734. AND BArtLief.Artnr >= VArtnr
  735. AND BArtLief.Artnr <= BArtnr NO-LOCK,
  736. FIRST BArtst USE-INDEX Artst-k1
  737. WHERE BArtst.Firma = BArtLief.Firma
  738. AND BArtst.Artnr = BArtLief.Artnr
  739. AND BArtst.Inhalt = BArtLief.Inhalt
  740. AND BArtst.Jahr = BArtLief.Jahr
  741. AND ((VWgr = '') OR
  742. (VWgr <> '' AND
  743. LOOKUP(STRING(BArtst.Wg_Grp,"999"), VWgr , ',') > 0))
  744. AND ((VHerst = '') OR
  745. (VHerst <> '' AND
  746. LOOKUP(STRING(BArtst.Herst ,"999"), VHerst, ',') > 0))
  747. AND BArtst.Aktiv = TRUE
  748. AND BArtst.Ausverk < 9 NO-LOCK,
  749. FIRST ArtLager NO-LOCK
  750. WHERE ArtLager.Firma = BArtst.Firma
  751. AND ArtLager.Artnr = BArtst.Artnr
  752. AND ArtLager.Inhalt = BArtst.Inhalt
  753. AND ArtLager.Jahr = BArtst.Jahr
  754. AND ArtLager.Lager = iLager
  755. BREAK BY BArtLief.Knr
  756. BY BArtst.Wg_Grp
  757. BY BArtst.Prod_Grp
  758. BY BArtst.Art_Grp
  759. BY BArtst.Artnr
  760. BY BArtst.Inhalt
  761. BY BArtst.Jahr :
  762. DO VCopy = 1 TO LiDruck.ListCopy:
  763. LNeu = TRUE.
  764. VZeile = "".
  765. VTotal0 = 0.
  766. VTotal1 = 0.
  767. XWgr = ''.
  768. XPgr = ''.
  769. XAgr = ''.
  770. FLeer = FALSE.
  771. { v8/opendruck.i }
  772. REPEAT:
  773. IF LNeu THEN FIND FIRST BArtst.
  774. ELSE FIND NEXT BArtst.
  775. IF NOT AVAILABLE BArtst THEN LEAVE.
  776. LNeu = FALSE.
  777. DO WHILE FIRST-OF ( BArtLief.Knr ) :
  778. FIND BAdresse USE-INDEX Adresse-k1
  779. WHERE BAdresse.Firma = AdFirma
  780. AND BAdresse.Knr = BArtLief.Knr NO-LOCK NO-ERROR.
  781. Ueber4 = STRING(BArtLief.Knr,"999999 ").
  782. IF AVAILABLE BAdresse THEN Ueber4 = Ueber4 + BAdresse.Anzeig_Br.
  783. ELSE Ueber4 = Ueber4 + FILL('?', 20).
  784. Ueber4 = Drufettb + Ueber4 + Drufette.
  785. TiDruck = TRUE.
  786. REPEAT TRANSACTION WHILE VBesko:
  787. FIND SteuNr WHERE SteuNr.Firma = GVFirma EXCLUSIVE-LOCK.
  788. SteuNr.Nr3 = SteuNr.Nr3 + 1.
  789. VBesnr = SteuNr.Nr3.
  790. FIND Liefst USE-INDEX Liefst-k1
  791. WHERE Liefst.Firma = GVFirma
  792. AND Liefst.Knr = BArtLief.Knr NO-LOCK.
  793. CREATE Besko.
  794. ASSIGN
  795. Besko.Firma = GVFirma
  796. Besko.Besnr = VBesnr
  797. Besko.Knr = Liefst.Knr
  798. Besko.Best_Datum = TODAY
  799. Besko.Lief_Datum = TODAY + 7
  800. Besko.Buch_Datum = ?
  801. Besko.I_Best = Liefst.Kontakt
  802. Besko.Rabatt = Liefst.Rabatt
  803. Besko.Gedruckt = FALSE
  804. Besko.Verbucht = FALSE
  805. Besko.Best_Sta = 1
  806. Besko.Bemerkung = Liefst.Bemerkung
  807. Besko.Kopf = Liefst.Kopf
  808. Besko.Schluss = Liefst.Schluss
  809. Besko.Kond = Liefst.Kond
  810. Besko.Lager = iLager.
  811. FIND Waehrung NO-LOCK USE-INDEX Waehrung-k1
  812. WHERE Waehrung.Firma = Liefst.Firma
  813. AND Waehrung.FRW = Liefst.FRW NO-ERROR.
  814. IF AVAILABLE Waehrung THEN
  815. DO:
  816. ASSIGN
  817. Besko.FRW = Waehrung.FRW
  818. Besko.Faktor = Waehrung.Faktor
  819. Besko.Kurs = Waehrung.Kurs.
  820. END.
  821. ELSE
  822. DO:
  823. ASSIGN
  824. Besko.FRW = 'CHF'
  825. Besko.Faktor = 1
  826. Besko.Kurs = 1.0.
  827. END.
  828. RELEASE Besko.
  829. RELEASE SteuNr.
  830. RELEASE Waehrung.
  831. LEAVE.
  832. END.
  833. LEAVE.
  834. END.
  835. IF FIRST-OF ( BArtst.Wg_Grp ) THEN
  836. DO:
  837. FIND WarenGrp USE-INDEX WarenGrp-k1
  838. WHERE WarenGrp.Firma = GVFirma
  839. AND WarenGrp.Wgr = BArtst.Wg_Grp NO-LOCK NO-ERROR.
  840. IF AVAILABLE WarenGrp THEN XWgr = WarenGrp.Bez1.
  841. ELSE XWgr = FILL('?', 20).
  842. END.
  843. IF FIRST-OF ( BArtst.Prod_Grp ) THEN
  844. DO:
  845. FIND ProdGrp USE-INDEX ProdGrp-k1
  846. WHERE ProdGrp.Firma = GVFirma
  847. AND ProdGrp.Wgr = BArtst.Wg_Grp
  848. AND ProdGrp.Prod_Grp = BArtst.Prod_Grp NO-LOCK NO-ERROR.
  849. IF AVAILABLE ProdGrp THEN XPgr = ProdGrp.Bez1.
  850. ELSE XPgr = FILL('?', 20).
  851. END.
  852. IF FIRST-OF ( BArtst.Art_Grp ) THEN
  853. DO:
  854. FIND ArtikGrp USE-INDEX ArtikGrp-k1
  855. WHERE ArtikGrp.Firma = GVFirma
  856. AND ArtikGrp.Wgr = BArtst.Wg_Grp
  857. AND ArtikGrp.Prod_Grp = BArtst.Prod_Grp
  858. AND ArtikGrp.Art_Grp = BArtst.Art_Grp NO-LOCK NO-ERROR.
  859. IF AVAILABLE ArtikGrp THEN XAgr = ArtikGrp.Bez1.
  860. ELSE XAgr = FILL('?', 20).
  861. END.
  862. IF LAST-OF ( BArtst.Wg_Grp) THEN FLeer = TRUE.
  863. IF LAST-OF ( BArtst.Prod_Grp) THEN FLeer = TRUE.
  864. IF LAST-OF ( BArtst.Art_Grp) THEN FLeer = TRUE.
  865. XStern = ''.
  866. IF (ArtLager.Bestand + ArtLager.Bestellt) <= ArtLager.Mind_Bestand THEN XStern = '*'.
  867. IF FUnter THEN
  868. DO:
  869. IF XStern <> '' THEN NEXT.
  870. END.
  871. RUN LISTTIT2.
  872. IF XWgr <> '' AND XWgr BEGINS '-' THEN XWgr = ''.
  873. IF XPgr <> '' AND XPgr BEGINS '-' THEN XPgr = ''.
  874. IF XAgr <> '' AND XAgr BEGINS '-' THEN XAgr = ''.
  875. IF XWgr <> '' THEN
  876. DO:
  877. VZeile = XWgr.
  878. { v8/putzeilf.i "1" }
  879. END.
  880. IF XPgr <> '' THEN
  881. DO:
  882. VZeile = XPgr.
  883. { v8/putzeilf.i "1" }
  884. END.
  885. IF XAgr <> '' THEN
  886. DO:
  887. VZeile = XAgr.
  888. { v8/putzeilf.i "1" }
  889. END.
  890. XWgr = ''.
  891. XPGr = ''.
  892. XAgr = ''.
  893. FIND Artbez USE-INDEX Artbez-k1
  894. WHERE Artbez.Firma = BArtst.Firma
  895. AND Artbez.Artnr = BArtst.Artnr
  896. AND Artbez.Inhalt = BArtst.Inhalt
  897. AND Artbez.Jahr = BArtst.Jahr
  898. AND Artbez.Sprcd = 1 NO-LOCK NO-ERROR.
  899. FIND KGebinde USE-INDEX KGebinde-k1
  900. WHERE KGebinde.Firma = GVFirma
  901. AND KGebinde.Geb_Cd = BArtst.KGeb_Cd NO-LOCK NO-ERROR.
  902. FIND VGebinde USE-INDEX VGebinde-k1
  903. WHERE VGebinde.Firma = GVFirma
  904. AND VGebinde.Geb_Cd = BArtst.VGeb_Cd NO-LOCK NO-ERROR.
  905. FIND GGebinde USE-INDEX GGebinde-k1
  906. WHERE GGebinde.Firma = GVFirma
  907. AND GGebinde.Geb_Cd = BArtst.GGeb_Cd NO-LOCK NO-ERROR.
  908. SUBSTRING(VZeile,001) = STRING(BArtst.Artnr ,'999999').
  909. SUBSTRING(VZeile,008) = STRING(BArtst.Inhalt ,'9999').
  910. SUBSTRING(VZeile,014) = STRING(ArtBez.Bez1 ,'x(30)').
  911. SUBSTRING(VZeile,046) = STRING(BArtst.Jahr ,'zzzz').
  912. IF BArtst.Alk_Gehalt <> 0 THEN
  913. SUBSTRING(VZeile,052) = STRING(BArtst.Alk_Gehalt ,'z9.99').
  914. SUBSTRING(VZeile,059) = STRING(KGebinde.Inhalt ,'zzzz').
  915. SUBSTRING(VZeile,065) = STRING(KGebinde.KBez ,'x(10)').
  916. SUBSTRING(VZeile,077) = STRING(ArtLager.Bestand ,'zzz,zz9-').
  917. SUBSTRING(VZeile,086) = STRING(BArtst.Bestellt ,'zzz,zzz').
  918. SUBSTRING(VZeile,095) = STRING(BArtst.Mind_Bestand,'zzz,zzz').
  919. SUBSTRING(VZeile,103) = STRING(XStern ,'x').
  920. { v8/putzeile.i "1" }
  921. IF ArtBez.Bez2 <> '' THEN
  922. DO:
  923. SUBSTRING(VZeile,014) = STRING(ArtBez.Bez2 ,'x(30)').
  924. { v8/putzeile.i "1" }
  925. END.
  926. IF FLeer THEN
  927. DO:
  928. { v8/putzeile.i "1" }
  929. FLeer = FALSE.
  930. END.
  931. IF NOT VBesko THEN NEXT.
  932. REPEAT TRANSACTION:
  933. FIND LAST Besze USE-INDEX Besze-k1
  934. WHERE Besze.Firma = GVFirma
  935. AND Besze.Besnr = VBesnr NO-LOCK NO-ERROR.
  936. IF AVAILABLE Besze THEN VPos = Besze.Pos + 10.
  937. ELSE VPos = 10.
  938. CREATE Besze.
  939. ASSIGN
  940. Besze.Firma = GVFirma
  941. Besze.Besnr = VBesnr
  942. Besze.Pos = VPos
  943. Besze.Artnr = BArtst.Artnr
  944. Besze.Inhalt = BArtst.Inhalt
  945. Besze.Jahr = BArtst.Jahr
  946. Besze.Bez1 = Artbez.Bez1
  947. Besze.Bez2 = Artbez.Bez2
  948. Besze.Preis = BArtLief.S_Preis
  949. Besze.Aktion = FALSE
  950. Besze.Lager = iLager
  951. Besze.KGeb_Cd = BArtst.KGeb_Cd
  952. Besze.VGeb_Cd = BArtst.VGeb_Cd
  953. Besze.GGeb_Cd = BArtst.GGeb_Cd
  954. Besze.KGebKto = KGebinde.Geb_Kto
  955. Besze.VGebKto = VGebinde.Geb_Kto
  956. Besze.GGebKto = GGebinde.Geb_Kto
  957. Besze.EP = BArtLief.L_EP
  958. Besze.S_Artnr = BArtLief.S_Artnr
  959. Besze.S_Bez1 = BArtLief.S_Bez1
  960. Besze.S_Bez2 = BArtLief.S_Bez2
  961. Besze.S_Preis = BArtLief.S_Preis
  962. Besze.S_Preis_FRW = BArtLief.S_Preis_FRW
  963. Besze.L_EP = BArtLief.L_EP
  964. Besze.L_EP_FRW = BArtLief.L_EP_FRW
  965. Besze.L_Rabatt = BArtLief.L_Rabatt
  966. Besze.Spesen = BArtLief.Spesen
  967. Besze.Rabatt = BArtLief.Rabatt.
  968. LEAVE.
  969. END.
  970. END. /* REPEAT */
  971. TiDruck = TRUE.
  972. IF DOpen = TRUE THEN
  973. DO:
  974. OUTPUT CLOSE.
  975. END.
  976. ELSE
  977. DO:
  978. RUN "v8/d-liste.w" ( INPUT Helptext[02] ).
  979. END.
  980. END. /* Kopien */
  981. END. /* DO PRESELECT */
  982. APPLY 'CHOOSE' TO Btn_Ende IN FRAME {&FRAME-NAME}.
  983. RETURN NO-APPLY.
  984. END PROCEDURE.
  985. /* _UIB-CODE-BLOCK-END */
  986. &ANALYZE-RESUME
  987. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE EXCEL B-table-Win
  988. PROCEDURE EXCEL :
  989. /*------------------------------------------------------------------------------
  990. Purpose:
  991. Parameters: <none>
  992. Notes:
  993. ------------------------------------------------------------------------------*/
  994. /*
  995. DEF VAR FileName AS CHAR NO-UNDO.
  996. DEF VAR ok AS LOG NO-UNDO.
  997. DEF VAR VPG AS INT EXTENT 20 NO-UNDO.
  998. DEF VAR VMax AS INT NO-UNDO.
  999. DEF VAR XPreisgrp AS CHAR NO-UNDO.
  1000. DEF VAR XWgr AS CHAR NO-UNDO.
  1001. DEF VAR XPro AS CHAR NO-UNDO.
  1002. DEF VAR XAgr AS CHAR NO-UNDO.
  1003. FileName = SESSION:TEMP-DIR + 'Artikel.csv'.
  1004. SYSTEM-DIALOG GET-FILE FileName
  1005. CREATE-TEST-FILE
  1006. INITIAL-DIR SESSION:TEMP-DIR
  1007. TITLE 'Dateiname für den Export'
  1008. USE-FILENAME
  1009. UPDATE ok.
  1010. IF NOT ok THEN RETURN.
  1011. DISABLE Btn_Excel WITH FRAME {&FRAME-NAME}.
  1012. DISABLE Btn_Start WITH FRAME {&FRAME-NAME}.
  1013. DISABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
  1014. DO TRANSACTION WITH FRAME {&FRAME-NAME}:
  1015. ASSIGN {&List-1}.
  1016. iLager = INTEGER(CB_Lager:SCREEN-VALUE).
  1017. FIND Listen WHERE RECID(Listen) = ARecid.
  1018. FIND LiDruck WHERE RECID(LiDruck) = BRecid.
  1019. ASSIGN Breite = F_Zeichen
  1020. Listen.Sort = F_Sort
  1021. Listen.ProgWahl = F_Sort
  1022. LiDruck.Listtzz = F_TZZ
  1023. LiDruck.Listkzz = F_KZZ
  1024. LiDruck.Listfzz = F_FZZ
  1025. LiDruck.Listlq = F_LQ
  1026. LiDruck.ListCopy = F_KOPIE
  1027. LiDruck.Schacht = F_SCHACHT
  1028. LiDruck.Listdru = XSchrift.Schname
  1029. LiDruck.Listbild = Schrift.Schbild.
  1030. IF LiDruck.ListCopy = 0 THEN LiDruck.ListCopy = 1.
  1031. ASSIGN {&List-2}.
  1032. IF VNr[01] = 0 AND BNr[01] = 0 THEN BNr[01] = 999999.
  1033. IF VNr[01] > BNr[01] THEN BNr[01] = VNr[01].
  1034. IF VNr[02] = 0 AND BNr[02] = 0 THEN BNr[02] = 99.
  1035. IF VNr[02] > BNr[02] THEN BNr[02] = VNr[02].
  1036. IF VNr[03] = 0 AND BNr[03] = 0 THEN BNr[03] = 99.
  1037. IF VNr[03] > BNr[03] THEN BNr[03] = VNr[03].
  1038. DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
  1039. ASSIGN LiDruck.ProgWahl = Listen.ProgWahl
  1040. LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99').
  1041. RELEASE Listen .
  1042. RELEASE LiDruck.
  1043. END.
  1044. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  1045. FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
  1046. FIND Steuer WHERE Steuer.Firma = GVFirma NO-LOCK NO-ERROR.
  1047. VSort = Listen.Sort.
  1048. VArtnr = Listen.VNr[01].
  1049. BArtnr = Listen.BNr[01].
  1050. VWgr = Listen.VNr[02].
  1051. BWgr = Listen.BNr[02].
  1052. VPreis_Grp = Listen.VNr[03].
  1053. BPreis_Grp = Listen.BNr[03].
  1054. FExklusive = Listen.VFl[01].
  1055. VPG = 0.
  1056. VMax = 0.
  1057. XpreisGrp = ''.
  1058. FOR EACH Tabel USE-INDEX Tabel-k1
  1059. WHERE Tabel.Firma = GVFirma
  1060. AND Tabel.RecArt = 'PREGRP'
  1061. AND Tabel.CodeC = ''
  1062. AND Tabel.Sprcd = 0 NO-LOCK:
  1063. VMax = VMax + 1.
  1064. VPG[VMax] = Tabel.CodeI.
  1065. XPreisGrp = XPreisGrp + Tabel.Bez1 + ";".
  1066. END.
  1067. /* ---------------------------------------------------------------------- */
  1068. /* Sort Artikelnummer */
  1069. /* ---------------------------------------------------------------------- */
  1070. IF VSort = 1 THEN DO:
  1071. OUTPUT TO VALUE(FileName).
  1072. PUT CONTROL 'Artnr' ";"
  1073. 'Inhalt' ";"
  1074. 'Jahr' ";"
  1075. 'Suchbe' ";"
  1076. 'Bez1' ";"
  1077. 'Bez2' ";"
  1078. 'Kleingebinde' ";"
  1079. 'Verkaufsgebinde' ";"
  1080. 'Grossgebinde' ";"
  1081. 'WarenGrp' ";"
  1082. 'ProdukteGrp' ";"
  1083. 'ArtikelGrp' ";"
  1084. 'RabattGrp' ";"
  1085. 'BonusGrp' ";"
  1086. 'Region' ";"
  1087. 'Farbe' ";"
  1088. 'Traubensorte' ";"
  1089. 'Leihartikel' ";"
  1090. 'Lagerhaltung' ";"
  1091. 'Skontober' ";"
  1092. 'Netto' ";"
  1093. 'MWST' ";"
  1094. 'Gewicht' ";"
  1095. 'AlkoholGeh' ";"
  1096. 'Konto' ";"
  1097. 'Herkunfstland' ";"
  1098. 'Strichcode' ";"
  1099. 'WHK_Code' ";"
  1100. 'Ausverkauft' ";"
  1101. 'Min.Marge' ";"
  1102. 'Preisliste' ";"
  1103. 'Bestand' ";"
  1104. XPreisGrp ";"
  1105. 'Lager' CHR(10).
  1106. FOR EACH BArtst USE-INDEX Artst-k1
  1107. WHERE BArtst.Firma = GVFirma
  1108. AND BArtst.Artnr >= VArtnr
  1109. AND BArtst.Artnr <= BArtnr
  1110. AND BArtst.Wg_Grp >= VWgr
  1111. AND BArtst.Wg_Grp <= BWgr
  1112. AND BArtst.Aktiv = TRUE NO-LOCK,
  1113. FIRST ArtLager NO-LOCK
  1114. WHERE ArtLager.Firma = BArtst.Firma
  1115. AND ArtLager.Artnr = BArtst.Artnr
  1116. AND ArtLager.Inhalt = BArtst.Inhalt
  1117. AND ArtLager.Jahr = BArtst.Jahr
  1118. AND ArtLager.Lager = iLager
  1119. BREAK BY BArtst.Wg_Grp
  1120. BY BArtst.Prod_Grp
  1121. BY BArtst.Art_Grp
  1122. BY BArtst.Artnr
  1123. BY BArtst.Inhalt
  1124. BY BArtst.Jahr :
  1125. i5 = 0.
  1126. IF FIRST-OF ( BArtst.Wg_Grp ) THEN DO:
  1127. FIND WarenGrp USE-INDEX WarenGrp-k1
  1128. WHERE WarenGrp.Firma = GVFirma
  1129. AND WarenGrp.Wgr = BArtst.Wg_Grp NO-LOCK NO-ERROR.
  1130. IF AVAILABLE WarenGrp THEN VZeile = WarenGrp.Bez1.
  1131. ELSE VZeile = FILL('?', 20).
  1132. PUT CONTROL VZeile CHR(10).
  1133. XWgr = STRING(BArtst.Wg_Grp,"999 ") + VZeile.
  1134. i5 = 1.
  1135. END.
  1136. IF FIRST-OF ( BArtst.Prod_Grp ) THEN DO:
  1137. FIND ProdGrp USE-INDEX ProdGrp-k1
  1138. WHERE ProdGrp.Firma = GVFirma
  1139. AND ProdGrp.Wgr = BArtst.Wg_Grp
  1140. AND ProdGrp.Prod_Grp = BArtst.Prod_Grp NO-LOCK NO-ERROR.
  1141. IF AVAILABLE ProdGrp THEN VZeile = ProdGrp.Bez1.
  1142. ELSE VZeile = FILL('?', 20).
  1143. PUT CONTROL VZeile CHR(10).
  1144. XPro = STRING(BArtst.Prod_Grp,"999 ") + VZeile.
  1145. i5 = 2.
  1146. END.
  1147. IF FIRST-OF ( BArtst.Art_Grp ) THEN DO:
  1148. FIND ArtikGrp USE-INDEX ArtikGrp-k1
  1149. WHERE ArtikGrp.Firma = GVFirma
  1150. AND ArtikGrp.Wgr = BArtst.Wg_Grp
  1151. AND ArtikGrp.Prod_Grp = BArtst.Prod_Grp
  1152. AND ArtikGrp.Art_Grp = BArtst.Art_Grp NO-LOCK NO-ERROR.
  1153. IF AVAILABLE ArtikGrp THEN VZeile = ArtikGrp.Bez1.
  1154. ELSE VZeile = FILL('?', 20).
  1155. IF VZeile BEGINS "-" THEN VZeile = ''.
  1156. PUT CONTROL VZeile CHR(10).
  1157. XAgr = STRING(BArtst.Art_Grp,"999 ") + VZeile.
  1158. i5 = 3.
  1159. END.
  1160. VZeile = ''.
  1161. IF i5 > 0 THEN DO:
  1162. PUT CONTROL CHR(10).
  1163. i5 = 0.
  1164. END.
  1165. FIND Artbez USE-INDEX Artbez-k1
  1166. WHERE Artbez.Firma = BArtst.Firma
  1167. AND Artbez.Artnr = BArtst.Artnr
  1168. AND Artbez.Inhalt = BArtst.Inhalt
  1169. AND Artbez.Jahr = BArtst.Jahr
  1170. AND Artbez.Sprcd = 1 NO-LOCK.
  1171. PUT CONTROL STRING(BArtst.Artnr ,"999999") ";"
  1172. STRING(BArtst.Inhalt ,"9999") ";"
  1173. STRING(BArtst.Jahr ,"9999") ";"
  1174. BArtst.Suchbe ";"
  1175. Artbez.Bez1 ";"
  1176. Artbez.Bez2 ";"
  1177. BArtst.KGeb_Cd ";"
  1178. BArtst.VGeb_Cd ";"
  1179. BArtst.GGeb_Cd ";"
  1180. XWgr ";"
  1181. XPro ";"
  1182. XAgr ";"
  1183. STRING(BArtst.Rab_Grp ,"999") ";"
  1184. STRING(BArtst.Bonus_Grp ,"999") ";"
  1185. STRING(BArtst.Reg_Grp ,"999") ";"
  1186. STRING(BArtst.Farbe ,"999") ";"
  1187. STRING(BArtst.Traub_Grp ,"999") ";"
  1188. STRING(BArtst.Leih_Art ,"J/N") ";"
  1189. STRING(BArtst.Lager ,"J/N") ";"
  1190. STRING(BArtst.Sk_Ber ,"J/N") ";"
  1191. STRING(BArtst.Netto ,"J/N") ";"
  1192. STRING(BArtst.WC ,"99") ";"
  1193. STRING(BArtst.Gewicht ,"zzz9.999") ";"
  1194. STRING(BArtst.Alk_Gehalt,"zz9.999") ";"
  1195. BArtst.Konto ";"
  1196. BArtst.Herk_Lkz ";"
  1197. BArtst.Strichcode ";"
  1198. BArtst.WHK_Code ";"
  1199. STRING(BArtst.Ausverk ,"9") ";"
  1200. STRING(BArtst.Min_Marge ,"zz9.99") ";"
  1201. STRING(BArtst.Preisliste,"J/N") ";"
  1202. STRING(ArtLager.Bestand ,"zzz,zz9") ";".
  1203. DO ix = 1 TO VMax:
  1204. FIND LAST ArtPreis USE-INDEX ArtPreis-k1
  1205. WHERE ArtPreis.Firma = BArtst.Firma
  1206. AND ArtPreis.Artnr = BArtst.Artnr
  1207. AND ArtPreis.Inhalt = BArtst.Inhalt
  1208. AND ArtPreis.Jahr = BArtst.Jahr
  1209. AND ArtPreis.Preis_Grp = VPG[ix]
  1210. AND ArtPreis.Aktion = FALSE
  1211. AND ArtPreis.Ab_Datum <= TODAY NO-LOCK NO-ERROR.
  1212. Rundbetr = 0.
  1213. IF AVAILABLE ArtPreis THEN DO:
  1214. IF FExklusive THEN Rundbetr = ArtPreis.VK_Netto.
  1215. ELSE Rundbetr = ArtPreis.VK_Brutto.
  1216. END.
  1217. PUT CONTROL STRING(Rundbetr ,"zz,zz9.999") ";".
  1218. END.
  1219. PUT CONTROL TRIM(STRING(ArtLager.Lager,'>>9')).
  1220. PUT CONTROL CHR(10).
  1221. IF LAST-OF ( BArtst.Art_Grp ) THEN DO:
  1222. PUT CONTROL CHR(10) CHR(10).
  1223. END.
  1224. END. /* FOR EACH */
  1225. OUTPUT CLOSE.
  1226. END. /* Sort Artikelnummer */
  1227. ENABLE Btn_Excel WITH FRAME {&FRAME-NAME}.
  1228. ENABLE Btn_Start WITH FRAME {&FRAME-NAME}.
  1229. ENABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
  1230. APPLY 'CHOOSE' TO Btn_Ende IN FRAME {&FRAME-NAME}.
  1231. RETURN NO-APPLY.
  1232. */
  1233. END PROCEDURE.
  1234. /* _UIB-CODE-BLOCK-END */
  1235. &ANALYZE-RESUME
  1236. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LIBILD B-table-Win
  1237. PROCEDURE LIBILD :
  1238. /*------------------------------------------------------------------------------
  1239. Purpose:
  1240. Parameters: <none>
  1241. Notes:
  1242. ------------------------------------------------------------------------------*/
  1243. { v8/libild.i }
  1244. END PROCEDURE.
  1245. /* _UIB-CODE-BLOCK-END */
  1246. &ANALYZE-RESUME
  1247. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LISTTIT1 B-table-Win
  1248. PROCEDURE LISTTIT1 :
  1249. /*------------------------------------------------------------------------------
  1250. Purpose:
  1251. Parameters: <none>
  1252. Notes:
  1253. ------------------------------------------------------------------------------*/
  1254. { v8/listtit1.i }
  1255. END PROCEDURE.
  1256. /* _UIB-CODE-BLOCK-END */
  1257. &ANALYZE-RESUME
  1258. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LISTTIT2 B-table-Win
  1259. PROCEDURE LISTTIT2 :
  1260. /*------------------------------------------------------------------------------
  1261. Purpose:
  1262. Parameters: <none>
  1263. Notes:
  1264. ------------------------------------------------------------------------------*/
  1265. { v8/listtit2.i }
  1266. END PROCEDURE.
  1267. /* _UIB-CODE-BLOCK-END */
  1268. &ANALYZE-RESUME
  1269. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-display-fields B-table-Win
  1270. PROCEDURE local-display-fields :
  1271. /*------------------------------------------------------------------------------
  1272. Purpose: Override standard ADM method
  1273. Notes:
  1274. ------------------------------------------------------------------------------*/
  1275. RUN dispatch IN THIS-PROCEDURE ( INPUT 'display-fields':U ) .
  1276. DISPLAY {&List-1} WITH FRAME {&FRAME-NAME}.
  1277. IF ARecid > -1 THEN
  1278. DO:
  1279. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  1280. DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
  1281. END.
  1282. ENABLE {&List-2} WITH FRAME {&FRAME-NAME}.
  1283. END PROCEDURE.
  1284. /* _UIB-CODE-BLOCK-END */
  1285. &ANALYZE-RESUME
  1286. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-hide B-table-Win
  1287. PROCEDURE local-hide :
  1288. /*------------------------------------------------------------------------------
  1289. Purpose: Override standard ADM method
  1290. Notes:
  1291. ------------------------------------------------------------------------------*/
  1292. DO TRANSACTION:
  1293. FIND Listen WHERE RECID(Listen) = ARecid.
  1294. Listen.Listfl = ''.
  1295. END.
  1296. RUN dispatch IN THIS-PROCEDURE ( INPUT 'hide':U ) .
  1297. END PROCEDURE.
  1298. /* _UIB-CODE-BLOCK-END */
  1299. &ANALYZE-RESUME
  1300. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-initialize B-table-Win
  1301. PROCEDURE local-initialize :
  1302. /*------------------------------------------------------------------------------
  1303. Purpose: Override standard ADM method
  1304. Notes:
  1305. ------------------------------------------------------------------------------*/
  1306. DEFINE BUFFER BListen FOR Listen.
  1307. DEFINE VARIABLE VListnr LIKE Listen.Listnr.
  1308. DEFINE VARIABLE VRecid AS RECID.
  1309. F_USER = DYNAMIC-FUNCTION('getDBUser':U) NO-ERROR.
  1310. QOpen = FALSE.
  1311. FInit = TRUE.
  1312. FOpen = FALSE.
  1313. DO WITH FRAME {&FRAME-NAME}:
  1314. iLager = DYNAMIC-FUNCTION('getBenLager':U) NO-ERROR.
  1315. RUN COMBO_LAGER ( CB_Lager:HANDLE ).
  1316. CB_Lager:SCREEN-VALUE = STRING(iLager,'999999').
  1317. END.
  1318. RUN dispatch IN THIS-PROCEDURE ( INPUT 'initialize':U ) .
  1319. RUN OPEN_XSCHRIFT.
  1320. VProgname = TRIM(F_USER) + '!' + TRIM(F_Programm).
  1321. FIND FIRST Listen USE-INDEX Listen-k1
  1322. WHERE Listen.Firma = GVFirma
  1323. AND Listen.Progname = VProgname
  1324. AND Listen.Listfl = '' NO-LOCK NO-ERROR.
  1325. REPEAT TRANSACTION:
  1326. IF NOT AVAILABLE Listen THEN
  1327. DO:
  1328. FIND LAST BListen USE-INDEX Listen-k1
  1329. WHERE BListen.Firma = GVFirma NO-LOCK NO-ERROR.
  1330. IF AVAILABLE BListen THEN VListnr = BListen.Listnr + 1.
  1331. ELSE VListnr = 1.
  1332. CREATE Listen.
  1333. ASSIGN
  1334. Listen.Firma = GVFirma
  1335. Listen.Listnr = VListnr
  1336. Listen.Progname = VProgname
  1337. Listen.Listfl = ''
  1338. Listen.Jahr = GVJahr
  1339. Listen.Sprcd = GVSprcd
  1340. Listen.Sort = 1
  1341. Listen.ProgWahl = 1.
  1342. END.
  1343. ARecid = RECID(Listen).
  1344. FIND LiDruck USE-INDEX LiDruck-k1
  1345. WHERE LiDruck.Firma = GVFirma
  1346. AND LiDruck.Listnr = Listen.Listnr
  1347. AND LiDruck.ProgWahl = Listen.ProgWahl NO-LOCK NO-ERROR.
  1348. IF NOT AVAILABLE LiDruck THEN
  1349. DO:
  1350. CREATE LiDruck.
  1351. ASSIGN
  1352. LiDruck.Firma = GVFirma
  1353. LiDruck.Listnr = Listen.Listnr
  1354. LiDruck.ProgWahl = Listen.ProgWahl
  1355. LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99')
  1356. LiDruck.ListCopy = 1
  1357. LiDruck.Schacht = 0
  1358. LiDruck.Listlq = FALSE.
  1359. END.
  1360. BRecid = RECID(LiDruck).
  1361. FIND Listen WHERE RECID(Listen) = ARecid.
  1362. Listen.Listfl = 'A'.
  1363. RELEASE Listen.
  1364. RELEASE LiDruck.
  1365. LEAVE.
  1366. END. /* TRANSACTION */
  1367. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  1368. FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
  1369. FOpen = TRUE.
  1370. ASchname = LiDruck.ListDru.
  1371. ASchbild = LiDruck.ListBild.
  1372. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  1373. IF NUM-RESULTS('Br_Druckername':U) = ? THEN LEAVE.
  1374. IF NUM-RESULTS('Br_Druckername':U) = 0 THEN LEAVE.
  1375. FIND FIRST XSchrift WHERE XSchrift.Schname = ASchname NO-LOCK NO-ERROR.
  1376. IF AVAILABLE XSchrift THEN VRecid = RECID(XSchrift).
  1377. ELSE
  1378. DO:
  1379. GET FIRST Br_Druckername.
  1380. VRecid = RECID(XSchrift).
  1381. END.
  1382. REPOSITION Br_Druckername TO RECID(VRecid).
  1383. ASchname = XSchrift.Schname.
  1384. RUN dispatch IN THIS-PROCEDURE ('open-query':U).
  1385. IF NUM-RESULTS('Br_Schriftbild':U) = ? THEN LEAVE.
  1386. IF NUM-RESULTS('Br_Schriftbild':U) = 0 THEN LEAVE.
  1387. FIND FIRST BSchrift WHERE BSchrift.Schname = ASchname
  1388. AND BSchrift.Schbild = ASchbild NO-LOCK NO-ERROR.
  1389. IF AVAILABLE BSchrift THEN VRecid = RECID(BSchrift).
  1390. ELSE
  1391. DO:
  1392. GET FIRST Br_Schriftbild.
  1393. VRecid = RECID(Schrift).
  1394. END.
  1395. REPOSITION Br_Schriftbild TO RECID(VRecid).
  1396. ASchbild = Schrift.Schbild.
  1397. LEAVE.
  1398. END.
  1399. RUN LIBILD.
  1400. F_Zeichen = Breite.
  1401. F_Sort = Listen.Sort.
  1402. F_TZZ = LiDruck.Listtzz.
  1403. F_KZZ = LiDruck.Listkzz.
  1404. F_FZZ = LiDruck.Listfzz.
  1405. F_LQ = LiDruck.Listlq.
  1406. F_KOPIE = LiDruck.ListCopy.
  1407. F_SCHACHT = LiDruck.Schacht.
  1408. OBreite = Breite.
  1409. RUN dispatch IN THIS-PROCEDURE ('display-fields':U).
  1410. END PROCEDURE.
  1411. /* _UIB-CODE-BLOCK-END */
  1412. &ANALYZE-RESUME
  1413. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-open-query B-table-Win
  1414. PROCEDURE local-open-query :
  1415. /*------------------------------------------------------------------------------
  1416. Purpose: Override standard ADM method
  1417. Notes:
  1418. ------------------------------------------------------------------------------*/
  1419. IF FOpen = FALSE THEN RETURN NO-APPLY.
  1420. DO WITH FRAME {&FRAME-NAME}:
  1421. IF QOpen = TRUE THEN
  1422. DO:
  1423. CLOSE QUERY Br_Schriftbild.
  1424. END.
  1425. QOpen = FALSE.
  1426. OPEN QUERY Br_Schriftbild
  1427. FOR EACH Schrift USE-INDEX Schrift-k1
  1428. WHERE Schrift.Schname = ASchname NO-LOCK.
  1429. Br_Schriftbild:SET-REPOSITIONED-ROW(6, "ALWAYS").
  1430. QOpen = TRUE.
  1431. END.
  1432. END PROCEDURE.
  1433. /* _UIB-CODE-BLOCK-END */
  1434. &ANALYZE-RESUME
  1435. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-row-changed B-table-Win
  1436. PROCEDURE local-row-changed :
  1437. /*------------------------------------------------------------------------------
  1438. Purpose: Override standard ADM method
  1439. Notes:
  1440. ------------------------------------------------------------------------------*/
  1441. RUN dispatch IN THIS-PROCEDURE ( INPUT 'row-changed':U ) .
  1442. OPEN QUERY Br_Schriftbild
  1443. FOR EACH Schrift WHERE Schrift.Schname = XSchrift.Schname NO-LOCK.
  1444. IF AVAILABLE LiDruck THEN
  1445. DO:
  1446. FIND BSchrift WHERE BSchrift.Schname = LiDruck.ListDru
  1447. AND BSchrift.Schbild = LiDruck.ListBild NO-LOCK NO-ERROR.
  1448. IF AVAILABLE BSchrift THEN
  1449. DO:
  1450. REPOSITION Br_Schriftbild TO RECID RECID(BSchrift) NO-ERROR.
  1451. END.
  1452. END.
  1453. APPLY 'VALUE-CHANGED' TO BROWSE Br_Schriftbild.
  1454. END PROCEDURE.
  1455. /* _UIB-CODE-BLOCK-END */
  1456. &ANALYZE-RESUME
  1457. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-view B-table-Win
  1458. PROCEDURE local-view :
  1459. /*------------------------------------------------------------------------------
  1460. Purpose: Override standard ADM method
  1461. Notes:
  1462. ------------------------------------------------------------------------------*/
  1463. RUN dispatch IN THIS-PROCEDURE ( INPUT 'view':U ) .
  1464. IF ARecid < 0 THEN RETURN.
  1465. FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
  1466. RUN dispatch IN THIS-PROCEDURE ('display-fields':U).
  1467. END PROCEDURE.
  1468. /* _UIB-CODE-BLOCK-END */
  1469. &ANALYZE-RESUME
  1470. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE OPEN_XSCHRIFT B-table-Win
  1471. PROCEDURE OPEN_XSCHRIFT :
  1472. /*------------------------------------------------------------------------------
  1473. Purpose:
  1474. Parameters: <none>
  1475. Notes:
  1476. ------------------------------------------------------------------------------*/
  1477. DO WITH FRAME {&FRAME-NAME}:
  1478. FOR EACH XSchrift:
  1479. DELETE XSchrift.
  1480. END.
  1481. AltSchname = ''.
  1482. FOR EACH Schrift NO-LOCK:
  1483. IF Schrift.Schname = AltSchname THEN NEXT.
  1484. CREATE XSchrift.
  1485. BUFFER-COPY Schrift TO XSchrift.
  1486. AltSchname = Schrift.Schname.
  1487. END.
  1488. OPEN QUERY Br_Druckername
  1489. FOR EACH XSchrift NO-LOCK.
  1490. Br_Druckername:SET-REPOSITIONED-ROW(6, "ALWAYS").
  1491. END.
  1492. END PROCEDURE.
  1493. /* _UIB-CODE-BLOCK-END */
  1494. &ANALYZE-RESUME
  1495. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records B-table-Win _ADM-SEND-RECORDS
  1496. PROCEDURE send-records :
  1497. /*------------------------------------------------------------------------------
  1498. Purpose: Send record ROWID's for all tables used by
  1499. this file.
  1500. Parameters: see template/snd-head.i
  1501. ------------------------------------------------------------------------------*/
  1502. /* Define variables needed by this internal procedure. */
  1503. {src/adm/template/snd-head.i}
  1504. /* For each requested table, put it's ROWID in the output list. */
  1505. {src/adm/template/snd-list.i "Schrift"}
  1506. {src/adm/template/snd-list.i "XSchrift"}
  1507. /* Deal with any unexpected table requests before closing. */
  1508. {src/adm/template/snd-end.i}
  1509. END PROCEDURE.
  1510. /* _UIB-CODE-BLOCK-END */
  1511. &ANALYZE-RESUME
  1512. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE state-changed B-table-Win
  1513. PROCEDURE state-changed :
  1514. /* -----------------------------------------------------------
  1515. Purpose:
  1516. Parameters: <none>
  1517. Notes:
  1518. -------------------------------------------------------------*/
  1519. DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO.
  1520. DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO.
  1521. CASE p-state:
  1522. /* Object instance CASEs can go here to replace standard behavior
  1523. or add new cases. */
  1524. {src/adm/template/bstates.i}
  1525. END CASE.
  1526. END PROCEDURE.
  1527. /* _UIB-CODE-BLOCK-END */
  1528. &ANALYZE-RESUME