v-artlief.w 45 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. anadat PROGRESS
  5. */
  6. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  7. {adecomm/appserv.i}
  8. /* Temp-Table and Buffer definitions */
  9. DEFINE TEMP-TABLE RowObject NO-UNDO
  10. {"d-artlief.i"}.
  11. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS vTableWin
  12. /*------------------------------------------------------------------------
  13. File:
  14. Description: from viewer.w - Template for SmartDataViewer objects
  15. Input Parameters:
  16. <none>
  17. Output Parameters:
  18. <none>
  19. ------------------------------------------------------------------------*/
  20. /* This .W file was created with the Progress AppBuilder. */
  21. /*----------------------------------------------------------------------*/
  22. /* Create an unnamed pool to store all the widgets created
  23. by this procedure. This is a good default which assures
  24. that this procedure's triggers and internal procedures
  25. will execute in this procedure's storage, and that proper
  26. cleanup will occur on deletion of the procedure. */
  27. CREATE WIDGET-POOL.
  28. /* *************************** Definitions ************************** */
  29. /* Komma-Trennzeichen */
  30. /* Keyfelder werden beim Mutieren nicht "Enabled" */
  31. &Scoped-define ERSTES_FELD Knr
  32. &Scoped-define LETZTES_FELD Strichcode_GGeb
  33. &Scoped-define KEY_FELDER Knr
  34. &Scoped-define NUR_LESEN Lieferant
  35. { incl/viwdefinition.i }
  36. DEFINE VARIABLE lLeave AS LOG NO-UNDO.
  37. DEFINE VARIABLE iArtnr AS INTEGER NO-UNDO.
  38. DEFINE VARIABLE iInhalt AS INTEGER NO-UNDO.
  39. DEFINE VARIABLE iJahr AS INTEGER NO-UNDO.
  40. DEFINE VARIABLE iLager AS INTEGER NO-UNDO.
  41. DEFINE VARIABLE iGGeb_Inhalt AS INTEGER NO-UNDO.
  42. DEFINE VARIABLE iVGeb_Inhalt AS INTEGER NO-UNDO.
  43. DEFINE VARIABLE iKGeb_Inhalt AS INTEGER NO-UNDO.
  44. DEFINE BUFFER bArtst FOR Artst .
  45. DEFINE BUFFER bArtLager FOR ArtLager.
  46. {src/adm2/widgetprto.i}
  47. /* _UIB-CODE-BLOCK-END */
  48. &ANALYZE-RESUME
  49. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  50. /* ******************** Preprocessor Definitions ******************** */
  51. &Scoped-define PROCEDURE-TYPE SmartDataViewer
  52. &Scoped-define DB-AWARE no
  53. &Scoped-define ADM-CONTAINER FRAME
  54. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  55. /* Include file with RowObject temp-table definition */
  56. &Scoped-define DATA-FIELD-DEFS "d-artlief.i"
  57. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  58. &Scoped-define FRAME-NAME F-Main
  59. /* Standard List Definitions */
  60. &Scoped-Define ENABLED-FIELDS RowObject.Knr RowObject.S_Artnr ~
  61. RowObject.S_Bez1 RowObject.Lieferant RowObject.S_Bez2 RowObject.Haupt ~
  62. RowObject.Mind_Bestand RowObject.Soll_Bestand RowObject.Meld_Bestand ~
  63. RowObject.S_Preis RowObject.L_EP RowObject.S_Preis_FRW RowObject.L_EP_FRW ~
  64. RowObject.Rabatt RowObject.ZusRab RowObject.L_Rabatt RowObject.Min_GGebinde ~
  65. RowObject.Min_VGebinde RowObject.Min_KGebinde RowObject.Min_Betrag ~
  66. RowObject.Strichcode_KGeb RowObject.Spesen RowObject.Strichcode_VGeb ~
  67. RowObject.Strichcode_GGeb
  68. &Scoped-define ENABLED-TABLES RowObject
  69. &Scoped-define FIRST-ENABLED-TABLE RowObject
  70. &Scoped-Define ENABLED-OBJECTS RECT-1 CB_Spesenart
  71. &Scoped-Define DISPLAYED-FIELDS RowObject.Knr RowObject.S_Artnr ~
  72. RowObject.S_Bez1 RowObject.Lieferant RowObject.S_Bez2 RowObject.GGeb_Inhalt ~
  73. RowObject.Haupt RowObject.VGeb_Inhalt RowObject.Mind_Bestand ~
  74. RowObject.Soll_Bestand RowObject.KGeb_Inhalt RowObject.Meld_Bestand ~
  75. RowObject.Firma RowObject.S_Preis RowObject.Artnr RowObject.L_EP ~
  76. RowObject.Min_Menge RowObject.S_Preis_FRW RowObject.VGeb_Cd ~
  77. RowObject.L_EP_FRW RowObject.Inhalt RowObject.Jahr RowObject.Rabatt ~
  78. RowObject.ZusRab RowObject.SpesenArt RowObject.L_Rabatt ~
  79. RowObject.Min_GGebinde RowObject.Min_VGebinde RowObject.Min_KGebinde ~
  80. RowObject.Min_Betrag RowObject.Strichcode_KGeb RowObject.Spesen ~
  81. RowObject.Strichcode_VGeb RowObject.Strichcode_GGeb
  82. &Scoped-define DISPLAYED-TABLES RowObject
  83. &Scoped-define FIRST-DISPLAYED-TABLE RowObject
  84. &Scoped-Define DISPLAYED-OBJECTS CB_Spesenart
  85. /* Custom List Definitions */
  86. /* ADM-ASSIGN-FIELDS,List-2,List-3,List-4,List-5,List-6 */
  87. /* _UIB-PREPROCESSOR-BLOCK-END */
  88. &ANALYZE-RESUME
  89. /* *********************** Control Definitions ********************** */
  90. /* Definitions of the field level widgets */
  91. DEFINE BUTTON Btn_Suchen
  92. IMAGE-UP FILE "grafik/select.bmp":U NO-FOCUS
  93. LABEL "S&uchen"
  94. SIZE 5 BY 1.
  95. DEFINE VARIABLE CB_Spesenart AS CHARACTER FORMAT "X(256)":U
  96. LABEL "Spesenart"
  97. VIEW-AS COMBO-BOX INNER-LINES 5
  98. LIST-ITEM-PAIRS "Beschaffungsspesen","000000",
  99. "Transportspesen","000001"
  100. DROP-DOWN-LIST
  101. SIZE 33.4 BY 1
  102. BGCOLOR 15 NO-UNDO.
  103. DEFINE RECTANGLE RECT-1
  104. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  105. SIZE 150 BY 12.62.
  106. /* ************************ Frame Definitions *********************** */
  107. DEFINE FRAME F-Main
  108. Btn_Suchen AT ROW 1.57 COL 36 WIDGET-ID 16
  109. RowObject.Knr AT ROW 1.52 COL 22 COLON-ALIGNED WIDGET-ID 22
  110. LABEL "Knr" FORMAT "999999"
  111. VIEW-AS FILL-IN NATIVE
  112. SIZE 11 BY 1 TOOLTIP "mit ALT-F suchen von Lieferanten"
  113. BGCOLOR 15
  114. RowObject.S_Artnr AT ROW 2.52 COL 22 COLON-ALIGNED WIDGET-ID 44
  115. LABEL "seine Nummer" FORMAT "x(12)"
  116. VIEW-AS FILL-IN NATIVE
  117. SIZE 17.6 BY 1
  118. BGCOLOR 15
  119. RowObject.S_Bez1 AT ROW 3.52 COL 22 COLON-ALIGNED WIDGET-ID 46
  120. LABEL "seine Bezeichnung" FORMAT "x(30)"
  121. VIEW-AS FILL-IN NATIVE
  122. SIZE 32 BY 1
  123. BGCOLOR 15
  124. RowObject.Lieferant AT ROW 1.57 COL 41 COLON-ALIGNED NO-LABEL WIDGET-ID 54
  125. VIEW-AS FILL-IN NATIVE
  126. SIZE 100 BY 1
  127. BGCOLOR 15 NO-TAB-STOP
  128. RowObject.S_Bez2 AT ROW 3.52 COL 57 COLON-ALIGNED WIDGET-ID 48
  129. LABEL "/" FORMAT "x(30)"
  130. VIEW-AS FILL-IN NATIVE
  131. SIZE 32 BY 1
  132. BGCOLOR 15
  133. RowObject.GGeb_Inhalt AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 70
  134. VIEW-AS FILL-IN NATIVE
  135. SIZE 4 BY 1
  136. BGCOLOR 15 NO-TAB-STOP
  137. RowObject.Haupt AT ROW 3.52 COL 96 WIDGET-ID 20
  138. LABEL "Hauptlieferant"
  139. VIEW-AS TOGGLE-BOX
  140. SIZE 23.4 BY 1
  141. RowObject.VGeb_Inhalt AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 74
  142. VIEW-AS FILL-IN NATIVE
  143. SIZE 4 BY 1
  144. BGCOLOR 15 NO-TAB-STOP
  145. RowObject.Mind_Bestand AT ROW 5 COL 35 COLON-ALIGNED WIDGET-ID 56
  146. VIEW-AS FILL-IN NATIVE
  147. SIZE 12 BY 1
  148. BGCOLOR 15
  149. RowObject.Soll_Bestand AT ROW 5 COL 83 COLON-ALIGNED WIDGET-ID 58
  150. VIEW-AS FILL-IN NATIVE
  151. SIZE 12 BY 1
  152. BGCOLOR 15
  153. RowObject.KGeb_Inhalt AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 72
  154. VIEW-AS FILL-IN NATIVE
  155. SIZE 4 BY 1
  156. BGCOLOR 15 NO-TAB-STOP
  157. RowObject.Meld_Bestand AT ROW 5 COL 128 COLON-ALIGNED WIDGET-ID 62
  158. LABEL "Meld. Best."
  159. VIEW-AS FILL-IN NATIVE
  160. SIZE 12 BY 1
  161. BGCOLOR 15
  162. RowObject.Firma AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 4
  163. VIEW-AS FILL-IN NATIVE
  164. SIZE 4 BY 1 NO-TAB-STOP
  165. RowObject.S_Preis AT ROW 6.52 COL 22 COLON-ALIGNED WIDGET-ID 50
  166. LABEL "sein Preis" FORMAT "zzz,zzz,zz9.9999"
  167. VIEW-AS FILL-IN NATIVE
  168. SIZE 25 BY 1
  169. BGCOLOR 15
  170. RowObject.Artnr AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 2
  171. VIEW-AS FILL-IN NATIVE
  172. SIZE 4 BY 1 NO-TAB-STOP
  173. RowObject.L_EP AT ROW 6.52 COL 70 COLON-ALIGNED WIDGET-ID 24
  174. LABEL "letzter EP" FORMAT "zzz,zzz,zz9.9999"
  175. VIEW-AS FILL-IN NATIVE
  176. SIZE 25 BY 1
  177. BGCOLOR 15
  178. RowObject.Min_Menge AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 32
  179. LABEL "mindest Menge" FORMAT "zzz,zzz,zz9-"
  180. VIEW-AS FILL-IN NATIVE
  181. SIZE 4 BY 1
  182. BGCOLOR 15 NO-TAB-STOP
  183. RowObject.S_Preis_FRW AT ROW 7.52 COL 22 COLON-ALIGNED WIDGET-ID 52
  184. LABEL "sein Preis (FRW)" FORMAT "zzz,zzz,zz9.9999"
  185. VIEW-AS FILL-IN NATIVE
  186. SIZE 25 BY 1
  187. BGCOLOR 15
  188. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS
  189. SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE
  190. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  191. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */
  192. DEFINE FRAME F-Main
  193. RowObject.VGeb_Cd AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 12
  194. VIEW-AS FILL-IN NATIVE
  195. SIZE 4 BY 1 NO-TAB-STOP
  196. RowObject.L_EP_FRW AT ROW 7.52 COL 70 COLON-ALIGNED WIDGET-ID 26
  197. LABEL "letzter EP (FRW)" FORMAT "zzz,zzz,zz9.9999"
  198. VIEW-AS FILL-IN NATIVE
  199. SIZE 25 BY 1
  200. BGCOLOR 15
  201. RowObject.Inhalt AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 6
  202. VIEW-AS FILL-IN NATIVE
  203. SIZE 4 BY 1 NO-TAB-STOP
  204. RowObject.Jahr AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 8
  205. VIEW-AS FILL-IN NATIVE
  206. SIZE 4 BY 1 NO-TAB-STOP
  207. RowObject.Rabatt AT ROW 8.52 COL 22 COLON-ALIGNED WIDGET-ID 34
  208. LABEL "Rabatt / Zus. Rab" FORMAT "zz9.99"
  209. VIEW-AS FILL-IN NATIVE
  210. SIZE 11 BY 1
  211. BGCOLOR 15
  212. RowObject.ZusRab AT ROW 8.52 COL 36 COLON-ALIGNED WIDGET-ID 60
  213. LABEL "/"
  214. VIEW-AS FILL-IN NATIVE
  215. SIZE 11 BY 1
  216. BGCOLOR 15
  217. RowObject.SpesenArt AT ROW 3 COL 78 COLON-ALIGNED WIDGET-ID 10 FORMAT "999999"
  218. VIEW-AS FILL-IN NATIVE
  219. SIZE 4 BY 1 NO-TAB-STOP
  220. RowObject.L_Rabatt AT ROW 8.52 COL 70 COLON-ALIGNED WIDGET-ID 28
  221. LABEL "letzter Rabatt" FORMAT "zz9.99"
  222. VIEW-AS FILL-IN NATIVE
  223. SIZE 11 BY 1
  224. BGCOLOR 15
  225. RowObject.Min_GGebinde AT ROW 6.52 COL 128 COLON-ALIGNED WIDGET-ID 64
  226. LABEL "Mind.Bestell GGeb"
  227. VIEW-AS FILL-IN NATIVE
  228. SIZE 12 BY 1
  229. BGCOLOR 15
  230. RowObject.Min_VGebinde AT ROW 7.52 COL 128 COLON-ALIGNED WIDGET-ID 68
  231. LABEL "Mind.Bestell VGeb"
  232. VIEW-AS FILL-IN NATIVE
  233. SIZE 12 BY 1
  234. BGCOLOR 15
  235. RowObject.Min_KGebinde AT ROW 8.52 COL 128 COLON-ALIGNED WIDGET-ID 66
  236. LABEL "Mind.Bestell KGeb"
  237. VIEW-AS FILL-IN NATIVE
  238. SIZE 12 BY 1
  239. BGCOLOR 15
  240. RowObject.Min_Betrag AT ROW 9.52 COL 122 COLON-ALIGNED WIDGET-ID 30
  241. LABEL "mindest Betrag" FORMAT "zzzz,zz9.99"
  242. VIEW-AS FILL-IN NATIVE
  243. SIZE 18 BY 1
  244. BGCOLOR 15
  245. CB_Spesenart AT ROW 10 COL 22 COLON-ALIGNED WIDGET-ID 18
  246. RowObject.Strichcode_KGeb AT ROW 10 COL 79.8 COLON-ALIGNED WIDGET-ID 40
  247. LABEL "Strichcode KGeb"
  248. VIEW-AS FILL-IN NATIVE
  249. SIZE 22 BY 1
  250. BGCOLOR 15
  251. RowObject.Spesen AT ROW 11 COL 22 COLON-ALIGNED WIDGET-ID 36
  252. VIEW-AS FILL-IN NATIVE
  253. SIZE 11 BY 1
  254. BGCOLOR 15
  255. RowObject.Strichcode_VGeb AT ROW 11 COL 79.8 COLON-ALIGNED WIDGET-ID 42
  256. LABEL "Strichcode VGeb"
  257. VIEW-AS FILL-IN NATIVE
  258. SIZE 22 BY 1
  259. BGCOLOR 15
  260. RowObject.Strichcode_GGeb AT ROW 12 COL 79.8 COLON-ALIGNED WIDGET-ID 38
  261. LABEL "Strichcode GGeb"
  262. VIEW-AS FILL-IN NATIVE
  263. SIZE 22 BY 1
  264. BGCOLOR 15
  265. RECT-1 AT ROW 1.24 COL 2 WIDGET-ID 14
  266. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS
  267. SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE
  268. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  269. /* *********************** Procedure Settings ************************ */
  270. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  271. /* Settings for THIS-PROCEDURE
  272. Type: SmartDataViewer
  273. Data Source: "d-artlief.w"
  274. Allow: Basic,DB-Fields,Smart
  275. Container Links: Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  276. Frames: 1
  277. Add Fields to: Neither
  278. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER
  279. Temp-Tables and Buffers:
  280. TABLE: RowObject D "?" NO-UNDO
  281. ADDITIONAL-FIELDS:
  282. {d-artlief.i}
  283. END-FIELDS.
  284. END-TABLES.
  285. */
  286. /* This procedure should always be RUN PERSISTENT. Report the error, */
  287. /* then cleanup and return. */
  288. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  289. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  290. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  291. RETURN.
  292. END.
  293. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  294. /* ************************* Create Window ************************** */
  295. &ANALYZE-SUSPEND _CREATE-WINDOW
  296. /* DESIGN Window definition (used by the UIB)
  297. CREATE WINDOW vTableWin ASSIGN
  298. HEIGHT = 13.1
  299. WIDTH = 151.8.
  300. /* END WINDOW DEFINITION */
  301. */
  302. &ANALYZE-RESUME
  303. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB vTableWin
  304. /* ************************* Included-Libraries *********************** */
  305. {src/adm2/viewer.i}
  306. /* _UIB-CODE-BLOCK-END */
  307. &ANALYZE-RESUME
  308. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  309. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  310. /* SETTINGS FOR WINDOW vTableWin
  311. VISIBLE,,RUN-PERSISTENT */
  312. /* SETTINGS FOR FRAME F-Main
  313. NOT-VISIBLE FRAME-NAME Size-to-Fit Custom */
  314. ASSIGN
  315. FRAME F-Main:SCROLLABLE = FALSE
  316. FRAME F-Main:HIDDEN = TRUE.
  317. /* SETTINGS FOR FILL-IN RowObject.Artnr IN FRAME F-Main
  318. NO-ENABLE */
  319. ASSIGN
  320. RowObject.Artnr:HIDDEN IN FRAME F-Main = TRUE
  321. RowObject.Artnr:READ-ONLY IN FRAME F-Main = TRUE.
  322. /* SETTINGS FOR BUTTON Btn_Suchen IN FRAME F-Main
  323. NO-ENABLE */
  324. /* SETTINGS FOR FILL-IN RowObject.Firma IN FRAME F-Main
  325. NO-ENABLE */
  326. ASSIGN
  327. RowObject.Firma:HIDDEN IN FRAME F-Main = TRUE
  328. RowObject.Firma:READ-ONLY IN FRAME F-Main = TRUE.
  329. /* SETTINGS FOR FILL-IN RowObject.GGeb_Inhalt IN FRAME F-Main
  330. NO-ENABLE */
  331. ASSIGN
  332. RowObject.GGeb_Inhalt:HIDDEN IN FRAME F-Main = TRUE
  333. RowObject.GGeb_Inhalt:READ-ONLY IN FRAME F-Main = TRUE.
  334. /* SETTINGS FOR TOGGLE-BOX RowObject.Haupt IN FRAME F-Main
  335. EXP-LABEL */
  336. /* SETTINGS FOR FILL-IN RowObject.Inhalt IN FRAME F-Main
  337. NO-ENABLE */
  338. ASSIGN
  339. RowObject.Inhalt:HIDDEN IN FRAME F-Main = TRUE
  340. RowObject.Inhalt:READ-ONLY IN FRAME F-Main = TRUE.
  341. /* SETTINGS FOR FILL-IN RowObject.Jahr IN FRAME F-Main
  342. NO-ENABLE */
  343. ASSIGN
  344. RowObject.Jahr:HIDDEN IN FRAME F-Main = TRUE
  345. RowObject.Jahr:READ-ONLY IN FRAME F-Main = TRUE.
  346. /* SETTINGS FOR FILL-IN RowObject.KGeb_Inhalt IN FRAME F-Main
  347. NO-ENABLE */
  348. ASSIGN
  349. RowObject.KGeb_Inhalt:HIDDEN IN FRAME F-Main = TRUE
  350. RowObject.KGeb_Inhalt:READ-ONLY IN FRAME F-Main = TRUE.
  351. /* SETTINGS FOR FILL-IN RowObject.Knr IN FRAME F-Main
  352. EXP-LABEL EXP-FORMAT */
  353. ASSIGN
  354. RowObject.Lieferant:READ-ONLY IN FRAME F-Main = TRUE.
  355. /* SETTINGS FOR FILL-IN RowObject.L_EP IN FRAME F-Main
  356. EXP-LABEL EXP-FORMAT */
  357. /* SETTINGS FOR FILL-IN RowObject.L_EP_FRW IN FRAME F-Main
  358. EXP-LABEL EXP-FORMAT */
  359. /* SETTINGS FOR FILL-IN RowObject.L_Rabatt IN FRAME F-Main
  360. EXP-LABEL EXP-FORMAT */
  361. /* SETTINGS FOR FILL-IN RowObject.Meld_Bestand IN FRAME F-Main
  362. EXP-LABEL */
  363. /* SETTINGS FOR FILL-IN RowObject.Min_Betrag IN FRAME F-Main
  364. EXP-LABEL EXP-FORMAT */
  365. /* SETTINGS FOR FILL-IN RowObject.Min_GGebinde IN FRAME F-Main
  366. EXP-LABEL */
  367. /* SETTINGS FOR FILL-IN RowObject.Min_KGebinde IN FRAME F-Main
  368. EXP-LABEL */
  369. /* SETTINGS FOR FILL-IN RowObject.Min_Menge IN FRAME F-Main
  370. NO-ENABLE EXP-LABEL EXP-FORMAT */
  371. ASSIGN
  372. RowObject.Min_Menge:HIDDEN IN FRAME F-Main = TRUE
  373. RowObject.Min_Menge:READ-ONLY IN FRAME F-Main = TRUE.
  374. /* SETTINGS FOR FILL-IN RowObject.Min_VGebinde IN FRAME F-Main
  375. EXP-LABEL */
  376. /* SETTINGS FOR FILL-IN RowObject.Rabatt IN FRAME F-Main
  377. EXP-LABEL EXP-FORMAT */
  378. /* SETTINGS FOR FILL-IN RowObject.SpesenArt IN FRAME F-Main
  379. NO-ENABLE EXP-FORMAT */
  380. ASSIGN
  381. RowObject.SpesenArt:HIDDEN IN FRAME F-Main = TRUE
  382. RowObject.SpesenArt:READ-ONLY IN FRAME F-Main = TRUE.
  383. /* SETTINGS FOR FILL-IN RowObject.Strichcode_GGeb IN FRAME F-Main
  384. EXP-LABEL */
  385. /* SETTINGS FOR FILL-IN RowObject.Strichcode_KGeb IN FRAME F-Main
  386. EXP-LABEL */
  387. /* SETTINGS FOR FILL-IN RowObject.Strichcode_VGeb IN FRAME F-Main
  388. EXP-LABEL */
  389. /* SETTINGS FOR FILL-IN RowObject.S_Artnr IN FRAME F-Main
  390. EXP-LABEL EXP-FORMAT */
  391. /* SETTINGS FOR FILL-IN RowObject.S_Bez1 IN FRAME F-Main
  392. EXP-LABEL EXP-FORMAT */
  393. /* SETTINGS FOR FILL-IN RowObject.S_Bez2 IN FRAME F-Main
  394. EXP-LABEL EXP-FORMAT */
  395. /* SETTINGS FOR FILL-IN RowObject.S_Preis IN FRAME F-Main
  396. EXP-LABEL EXP-FORMAT */
  397. /* SETTINGS FOR FILL-IN RowObject.S_Preis_FRW IN FRAME F-Main
  398. EXP-LABEL EXP-FORMAT */
  399. /* SETTINGS FOR FILL-IN RowObject.VGeb_Cd IN FRAME F-Main
  400. NO-ENABLE */
  401. ASSIGN
  402. RowObject.VGeb_Cd:HIDDEN IN FRAME F-Main = TRUE
  403. RowObject.VGeb_Cd:READ-ONLY IN FRAME F-Main = TRUE.
  404. /* SETTINGS FOR FILL-IN RowObject.VGeb_Inhalt IN FRAME F-Main
  405. NO-ENABLE */
  406. ASSIGN
  407. RowObject.VGeb_Inhalt:HIDDEN IN FRAME F-Main = TRUE
  408. RowObject.VGeb_Inhalt:READ-ONLY IN FRAME F-Main = TRUE.
  409. /* SETTINGS FOR FILL-IN RowObject.ZusRab IN FRAME F-Main
  410. EXP-LABEL */
  411. /* _RUN-TIME-ATTRIBUTES-END */
  412. &ANALYZE-RESUME
  413. /* Setting information for Queries and Browse Widgets fields */
  414. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  415. /* Query rebuild information for FRAME F-Main
  416. _Options = "NO-LOCK"
  417. _Query is NOT OPENED
  418. */ /* FRAME F-Main */
  419. &ANALYZE-RESUME
  420. /* ************************ Control Triggers ************************ */
  421. &Scoped-define SELF-NAME Btn_Suchen
  422. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Suchen vTableWin
  423. ON CHOOSE OF Btn_Suchen IN FRAME F-Main /* Suchen */
  424. DO:
  425. DEFINE VARIABLE iRecid AS RECID NO-UNDO.
  426. lLeave = FALSE.
  427. RUN 'g-suchen-adresse.w':U ( 'LIE', OUTPUT iRecid ).
  428. lLeave = TRUE.
  429. IF iRecid = ? OR
  430. iRecid = 0 THEN RETURN NO-APPLY.
  431. FIND Adresse NO-LOCK WHERE RECID(Adresse) = iRecid NO-ERROR.
  432. rowObject.Knr :SCREEN-VALUE = STRING(Adresse.Knr).
  433. rowObject.Lieferant:SCREEN-VALUE = Adresse.Anzeig_br.
  434. APPLY 'ENTRY' TO rowObject.S_Artnr.
  435. RETURN NO-APPLY.
  436. END.
  437. /* _UIB-CODE-BLOCK-END */
  438. &ANALYZE-RESUME
  439. &Scoped-define SELF-NAME CB_Spesenart
  440. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Spesenart vTableWin
  441. ON VALUE-CHANGED OF CB_Spesenart IN FRAME F-Main /* Spesenart */
  442. DO:
  443. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.SpesenArt:SCREEN-VALUE.
  444. rowObject.SpesenArt:SCREEN-VALUE = SELF:SCREEN-VALUE.
  445. END.
  446. /* _UIB-CODE-BLOCK-END */
  447. &ANALYZE-RESUME
  448. &Scoped-define SELF-NAME RowObject.Knr
  449. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Knr vTableWin
  450. ON ALT-F OF RowObject.Knr IN FRAME F-Main /* Knr */
  451. DO:
  452. IF NOT FNeu THEN RETURN NO-APPLY.
  453. APPLY 'CHOOSE' TO Btn_Suchen.
  454. RETURN NO-APPLY.
  455. END.
  456. /* _UIB-CODE-BLOCK-END */
  457. &ANALYZE-RESUME
  458. &UNDEFINE SELF-NAME
  459. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK vTableWin
  460. /* *************************** Main Block *************************** */
  461. { incl/viwmainblock.i }
  462. ON 'VALUE-CHANGED':U OF rowObject.Haupt IN FRAME {&FRAME-NAME}
  463. DO:
  464. IF NOT FMut THEN SELF:SCREEN-VALUE = (IF SELF:SCREEN-VALUE BEGINS 'n' THEN STRING(TRUE) ELSE STRING(FALSE)).
  465. END.
  466. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  467. RUN initializeObject.
  468. &ENDIF
  469. /************************ INTERNAL PROCEDURES ********************/
  470. /* _UIB-CODE-BLOCK-END */
  471. &ANALYZE-RESUME
  472. /* ********************** Internal Procedures *********************** */
  473. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE addRecord vTableWin
  474. PROCEDURE addRecord :
  475. /*------------------------------------------------------------------------------
  476. Purpose: Super Override
  477. Parameters:
  478. Notes:
  479. ------------------------------------------------------------------------------*/
  480. FNeu = TRUE.
  481. FMut = TRUE.
  482. FDisp = TRUE.
  483. RUN SUPER.
  484. /* Code placed here will execute AFTER standard behavior. */
  485. END PROCEDURE.
  486. /* _UIB-CODE-BLOCK-END */
  487. &ANALYZE-RESUME
  488. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE cancelRecord vTableWin
  489. PROCEDURE cancelRecord :
  490. /*------------------------------------------------------------------------------
  491. Purpose: Super Override
  492. Parameters:
  493. Notes:
  494. ------------------------------------------------------------------------------*/
  495. FCancel = TRUE.
  496. RUN SUPER.
  497. /* Code placed here will execute AFTER standard behavior. */
  498. END PROCEDURE.
  499. /* _UIB-CODE-BLOCK-END */
  500. &ANALYZE-RESUME
  501. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE copyRecord vTableWin
  502. PROCEDURE copyRecord :
  503. /*------------------------------------------------------------------------------
  504. Purpose: Super Override
  505. Parameters:
  506. Notes:
  507. ------------------------------------------------------------------------------*/
  508. FNeu = TRUE.
  509. FMut = TRUE.
  510. FCopy = TRUE.
  511. FDisp = TRUE.
  512. RUN SUPER.
  513. END PROCEDURE.
  514. /* _UIB-CODE-BLOCK-END */
  515. &ANALYZE-RESUME
  516. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE deleteRecord vTableWin
  517. PROCEDURE deleteRecord :
  518. /*------------------------------------------------------------------------------
  519. Purpose: Super Override
  520. Parameters:
  521. Notes:
  522. ------------------------------------------------------------------------------*/
  523. DEFINE VARIABLE Ja AS LOG NO-UNDO.
  524. Ja = DYNAMIC-FUNCTION( 'ANTWORT_NEIN':U, INPUT 1000 ).
  525. IF NOT Ja THEN
  526. DO:
  527. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR.
  528. RETURN NO-APPLY.
  529. END.
  530. /* REPEAT TRANSACTION: */
  531. /* RUN INAKTIVIEREN IN hDaten. */
  532. /* LEAVE. */
  533. /* END. */
  534. /* */
  535. RUN SUPER.
  536. /* Code placed here will execute AFTER standard behavior. */
  537. END PROCEDURE.
  538. /* _UIB-CODE-BLOCK-END */
  539. &ANALYZE-RESUME
  540. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disableFields vTableWin
  541. PROCEDURE disableFields :
  542. /*------------------------------------------------------------------------------
  543. Purpose: Super Override
  544. Parameters:
  545. Notes:
  546. ------------------------------------------------------------------------------*/
  547. DEFINE INPUT PARAMETER pcFieldType AS CHARACTER NO-UNDO.
  548. DO WITH FRAME {&FRAME-NAME}:
  549. END.
  550. RUN SUPER( INPUT pcFieldType).
  551. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  552. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ).
  553. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN
  554. DO:
  555. RUN FARBE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT 15 ).
  556. END.
  557. DO WITH FRAME {&FRAME-NAME}:
  558. Btn_Suchen:SENSITIVE = FALSE.
  559. END.
  560. END PROCEDURE.
  561. /* _UIB-CODE-BLOCK-END */
  562. &ANALYZE-RESUME
  563. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI vTableWin _DEFAULT-DISABLE
  564. PROCEDURE disable_UI :
  565. /*------------------------------------------------------------------------------
  566. Purpose: DISABLE the User Interface
  567. Parameters: <none>
  568. Notes: Here we clean-up the user-interface by deleting
  569. dynamic widgets we have created and/or hide
  570. frames. This procedure is usually called when
  571. we are ready to "clean-up" after running.
  572. ------------------------------------------------------------------------------*/
  573. /* Hide all frames. */
  574. HIDE FRAME F-Main.
  575. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  576. END PROCEDURE.
  577. /* _UIB-CODE-BLOCK-END */
  578. &ANALYZE-RESUME
  579. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE displayFields vTableWin
  580. PROCEDURE displayFields :
  581. /*------------------------------------------------------------------------------
  582. Purpose: Super Override
  583. Parameters:
  584. Notes:
  585. ------------------------------------------------------------------------------*/
  586. DEFINE INPUT PARAMETER pcColValues AS CHARACTER NO-UNDO.
  587. IF NOT FDisp THEN
  588. DO:
  589. FDisp = TRUE.
  590. RETURN.
  591. END.
  592. IF FCancel THEN pcColValues = OldColValues.
  593. IF NOT FNeu THEN OldColValues = pcColValues.
  594. OldColList = DYNAMIC-FUNCTION('getDisplayedFields':U).
  595. IF FNeu THEN RUN FEHLWERTE ( INPUT-OUTPUT pcColValues ).
  596. DO WITH FRAME {&FRAME-NAME}:
  597. END.
  598. RUN SUPER( INPUT pcColValues).
  599. FCancel = FALSE.
  600. DO WITH FRAME {&FRAME-NAME}:
  601. CB_Spesenart:SCREEN-VALUE = rowObject.SpesenArt:SCREEN-VALUE NO-ERROR.
  602. iGGeb_Inhalt = INTEGER(rowObject.GGeb_Inhalt:SCREEN-VALUE).
  603. iVGeb_Inhalt = INTEGER(rowObject.VGeb_Inhalt:SCREEN-VALUE).
  604. iKGeb_Inhalt = INTEGER(rowObject.KGeb_Inhalt:SCREEN-VALUE).
  605. END.
  606. END PROCEDURE.
  607. /* _UIB-CODE-BLOCK-END */
  608. &ANALYZE-RESUME
  609. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableFields vTableWin
  610. PROCEDURE enableFields :
  611. /*------------------------------------------------------------------------------
  612. Purpose: Super Override
  613. Parameters:
  614. Notes:
  615. ------------------------------------------------------------------------------*/
  616. /* Code placed here will execute PRIOR to standard behavior. */
  617. /*
  618. RUN SUPER.
  619. */
  620. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  621. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT FALSE ).
  622. IF NUM-ENTRIES('{&NUR_LESEN}', ',') > 0 THEN
  623. DO:
  624. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&NUR_LESEN}', INPUT TRUE ).
  625. END.
  626. DO WITH FRAME {&FRAME-NAME}:
  627. IF FNeu THEN Btn_Suchen:SENSITIVE = TRUE.
  628. END.
  629. IF FNeu THEN RETURN.
  630. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN
  631. DO:
  632. RUN SCHUETZE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT TRUE ).
  633. END.
  634. END PROCEDURE.
  635. /* _UIB-CODE-BLOCK-END */
  636. &ANALYZE-RESUME
  637. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject vTableWin
  638. PROCEDURE enableObject :
  639. /*------------------------------------------------------------------------------
  640. Purpose: Super Override
  641. Parameters:
  642. Notes:
  643. ------------------------------------------------------------------------------*/
  644. /* Code placed here will execute PRIOR to standard behavior. */
  645. RUN SUPER.
  646. { incl/viwenableobject.i }
  647. END PROCEDURE.
  648. /* _UIB-CODE-BLOCK-END */
  649. &ANALYZE-RESUME
  650. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_FELD_TEST vTableWin
  651. PROCEDURE ENTRY_FELD_TEST :
  652. /*------------------------------------------------------------------------------
  653. Purpose:
  654. Parameters: <none>
  655. Notes:
  656. ------------------------------------------------------------------------------*/
  657. { incl/viwentryfeldtest.i }
  658. DO WITH FRAME {&FRAME-NAME}:
  659. CASE FeldName:
  660. END CASE.
  661. END.
  662. RETURN ''.
  663. END PROCEDURE.
  664. /* _UIB-CODE-BLOCK-END */
  665. &ANALYZE-RESUME
  666. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FEHLWERTE vTableWin
  667. PROCEDURE FEHLWERTE :
  668. /*------------------------------------------------------------------------------
  669. Purpose:
  670. Parameters: <none>
  671. Notes:
  672. ------------------------------------------------------------------------------*/
  673. DEFINE INPUT-OUTPUT PARAMETER pcColValues AS CHARACTER NO-UNDO.
  674. DEFINE VARIABLE i1 AS INTEGER NO-UNDO.
  675. IF FCancel THEN RETURN.
  676. IF NOT FCopy THEN
  677. DO WITH FRAME {&FRAME-NAME}:
  678. i1 = LOOKUP('Artnr', oldColList, ',') + 1.
  679. iArtnr = INTEGER(ENTRY(i1, pcColValues, CHR(1))) NO-ERROR.
  680. i1 = LOOKUP('Inhalt', oldColList, ',') + 1.
  681. iInhalt = INTEGER(ENTRY(i1, pcColValues, CHR(1))) NO-ERROR.
  682. i1 = LOOKUP('Jahr', oldColList, ',') + 1.
  683. iJahr = INTEGER(ENTRY(i1, pcColValues, CHR(1))) NO-ERROR.
  684. FIND FIRST ArtLief NO-LOCK USE-INDEX ArtLief-k1
  685. WHERE ArtLief.Firma = Firma
  686. AND ArtLief.Artnr = iArtnr
  687. AND ArtLief.Inhalt = iInhalt
  688. AND ArtLief.Jahr = iJahr NO-ERROR.
  689. IF AVAILABLE ArtLief THEN
  690. DO:
  691. i1 = LOOKUP('Strichcode_KGeb', oldColList, ',') + 1.
  692. ENTRY(i1, pcColValues, CHR(1)) = ArtLief.Strichcode_KGeb NO-ERROR.
  693. i1 = LOOKUP('Strichcode_VGeb', oldColList, ',') + 1.
  694. ENTRY(i1, pcColValues, CHR(1)) = ArtLief.Strichcode_VGeb NO-ERROR.
  695. i1 = LOOKUP('Strichcode_GGeb', oldColList, ',') + 1.
  696. ENTRY(i1, pcColValues, CHR(1)) = ArtLief.Strichcode_GGeb NO-ERROR.
  697. i1 = LOOKUP('Min_GGebinde', oldColList, ',') + 1.
  698. ENTRY(i1, pcColValues, CHR(1)) = STRING(ArtLief.Min_GGebinde) NO-ERROR.
  699. i1 = LOOKUP('Min_VGebinde', oldColList, ',') + 1.
  700. ENTRY(i1, pcColValues, CHR(1)) = STRING(ArtLief.Min_VGebinde) NO-ERROR.
  701. i1 = LOOKUP('Min_KGebinde', oldColList, ',') + 1.
  702. ENTRY(i1, pcColValues, CHR(1)) = STRING(ArtLief.Min_KGebinde) NO-ERROR.
  703. END.
  704. FIND bArtst NO-LOCK
  705. WHERE bArtst.Firma = Firma
  706. AND bArtst.Artnr = iArtnr
  707. AND bArtst.Inhalt = iInhalt
  708. AND bArtst.Jahr = iJahr NO-ERROR.
  709. IF AVAILABLE ArtLief THEN
  710. DO:
  711. i1 = LOOKUP('KGeb_Inhalt', oldColList, ',') + 1.
  712. ENTRY(i1, pcColValues, CHR(1)) = DYNAMIC-FUNCTION ('getKGebindeInhalt':U, bArtst.KGeb_Cd) NO-ERROR.
  713. i1 = LOOKUP('VGeb_Inhalt', oldColList, ',') + 1.
  714. ENTRY(i1, pcColValues, CHR(1)) = DYNAMIC-FUNCTION ('getVGebindeInhalt':U, bArtst.VGeb_Cd) NO-ERROR.
  715. i1 = LOOKUP('GGeb_Inhalt', oldColList, ',') + 1.
  716. ENTRY(i1, pcColValues, CHR(1)) = DYNAMIC-FUNCTION ('getGGebindeInhalt':U, bArtst.GGeb_Cd) NO-ERROR.
  717. END.
  718. END.
  719. RELEASE ArtLief.
  720. RELEASE bArtst.
  721. IF FCopy THEN
  722. DO:
  723. END.
  724. END PROCEDURE.
  725. /* _UIB-CODE-BLOCK-END */
  726. &ANALYZE-RESUME
  727. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEAVE_FELD_TEST vTableWin
  728. PROCEDURE LEAVE_FELD_TEST :
  729. /*------------------------------------------------------------------------------
  730. Purpose:
  731. Parameters: <none>
  732. Notes:
  733. ------------------------------------------------------------------------------*/
  734. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO.
  735. DEFINE VARIABLE Betrag AS DECIMAL DECIMALS 4 NO-UNDO.
  736. { incl/viwleavefeldtest.i }
  737. DO WHILE FNeu WITH FRAME {&FRAME-NAME}:
  738. CASE FeldName:
  739. WHEN 'Knr' THEN
  740. DO:
  741. IF lLeave THEN
  742. DO:
  743. FIND Liefst NO-LOCK USE-INDEX Liefst-k1
  744. WHERE Liefst.Firma = Firma
  745. AND Liefst.Knr = INTEGER(FeldInhalt) NO-ERROR.
  746. IF NOT AVAILABLE Liefst THEN
  747. DO:
  748. RUN FEHLER ( INPUT 1027 ).
  749. RETURN 'ERROR'.
  750. END.
  751. FIND Adresse NO-LOCK USE-INDEX Adresse-k1
  752. WHERE Adresse.Firma = AdFirma
  753. AND Adresse.Knr = Liefst.Knr NO-ERROR.
  754. IF NOT AVAILABLE Adresse THEN
  755. DO:
  756. RUN FEHLER ( 1015 ).
  757. RETURN 'ERROR'.
  758. END.
  759. IF NOT Adresse.Aktiv THEN
  760. DO:
  761. RUN FEHLER ( 8016 ).
  762. RETURN 'ERROR'.
  763. END.
  764. rowObject.Lieferant:SCREEN-VALUE IN FRAME {&FRAME-NAME}
  765. = DYNAMIC-FUNCTION('GetAdressAnzeige':U,
  766. INPUT Liefst.Knr ) NO-ERROR.
  767. END.
  768. END.
  769. END CASE.
  770. LEAVE.
  771. END.
  772. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  773. CASE FeldName:
  774. WHEN 'S_Preis' THEN
  775. DO:
  776. IF NOT ipHandle:MODIFIED THEN LEAVE.
  777. iKnr = INTEGER(rowObject.Knr:SCREEN-VALUE).
  778. FIND Liefst USE-INDEX Liefst-k1
  779. WHERE Liefst.Firma = Firma
  780. AND Liefst.Knr = iKnr NO-LOCK NO-ERROR.
  781. FIND Waehrung NO-LOCK
  782. WHERE Waehrung.Firma = Firma
  783. AND Waehrung.Frw = Liefst.FRW NO-ERROR.
  784. IF NOT AVAILABLE Waehrung THEN LEAVE.
  785. IF DECIMAL(rowObject.S_Preis:SCREEN-VALUE) = 0 AND
  786. DECIMAL(rowObject.S_Preis_FRW:SCREEN-VALUE) = 0 THEN LEAVE.
  787. IF DECIMAL(FeldInhalt) <> 0 THEN
  788. DO:
  789. Betrag = DECIMAL(FeldInhalt) * Waehrung.Faktor / Waehrung.Kurs.
  790. rowObject.S_Preis_FRW:SCREEN-VALUE = STRING(Betrag).
  791. LEAVE.
  792. END.
  793. Betrag = DECIMAL(rowObject.S_Preis_FRW:SCREEN-VALUE) * Waehrung.Kurs / Waehrung.Faktor.
  794. rowObject.S_Preis:SCREEN-VALUE = STRING(Betrag).
  795. LEAVE.
  796. END.
  797. WHEN 'S_Preis_FRW' THEN
  798. DO:
  799. IF NOT ipHandle:MODIFIED THEN LEAVE.
  800. iKnr = INTEGER(rowObject.Knr:SCREEN-VALUE).
  801. FIND Liefst USE-INDEX Liefst-k1
  802. WHERE Liefst.Firma = Firma
  803. AND Liefst.Knr = iKnr NO-LOCK NO-ERROR.
  804. FIND Waehrung NO-LOCK
  805. WHERE Waehrung.Firma = Firma
  806. AND Waehrung.FRW = Liefst.FRW NO-ERROR.
  807. IF NOT AVAILABLE Waehrung THEN LEAVE.
  808. IF DECIMAL(rowObject.S_Preis:SCREEN-VALUE) = 0 AND
  809. DECIMAL(rowObject.S_Preis_FRW:SCREEN-VALUE) = 0 THEN LEAVE.
  810. IF DECIMAL(FeldInhalt) <> 0 THEN
  811. DO:
  812. Betrag = DECIMAL(FeldInhalt) * Waehrung.Kurs / Waehrung.Faktor.
  813. rowObject.S_Preis:SCREEN-VALUE = STRING(Betrag).
  814. LEAVE.
  815. END.
  816. Betrag = DECIMAL(rowObject.S_Preis:SCREEN-VALUE) * Waehrung.Faktor / Waehrung.Kurs.
  817. rowObject.S_Preis_FRW:SCREEN-VALUE = STRING(Betrag).
  818. LEAVE.
  819. END.
  820. WHEN 'L_EP' THEN
  821. DO:
  822. IF NOT ipHandle:MODIFIED THEN LEAVE.
  823. iKnr = INTEGER(rowObject.Knr:SCREEN-VALUE).
  824. FIND Liefst USE-INDEX Liefst-k1
  825. WHERE Liefst.Firma = Firma
  826. AND Liefst.Knr = iKnr NO-LOCK NO-ERROR.
  827. FIND Waehrung NO-LOCK
  828. WHERE Waehrung.Firma = Firma
  829. AND Waehrung.FRW = Liefst.FRW NO-ERROR.
  830. IF NOT AVAILABLE Waehrung THEN LEAVE.
  831. IF DECIMAL(rowObject.L_EP:SCREEN-VALUE) = 0 AND
  832. DECIMAL(rowObject.L_EP_FRW:SCREEN-VALUE) = 0 THEN LEAVE.
  833. IF DECIMAL(FeldInhalt) NE 0 THEN
  834. DO:
  835. Betrag = DECIMAL(FeldInhalt) * Waehrung.Faktor / Waehrung.Kurs.
  836. rowObject.L_EP_FRW:SCREEN-VALUE = STRING(Betrag).
  837. LEAVE.
  838. END.
  839. Betrag = DECIMAL(rowObject.L_EP_FRW:SCREEN-VALUE) * Waehrung.Kurs / Waehrung.Faktor.
  840. rowObject.L_EP:SCREEN-VALUE = STRING(Betrag).
  841. LEAVE.
  842. END.
  843. WHEN 'L_EP_FRW' THEN
  844. DO:
  845. IF NOT ipHandle:MODIFIED THEN LEAVE.
  846. iKnr = INTEGER(rowObject.Knr:SCREEN-VALUE).
  847. FIND Liefst USE-INDEX Liefst-k1
  848. WHERE Liefst.Firma = Firma
  849. AND Liefst.Knr = iKnr NO-LOCK NO-ERROR.
  850. FIND Waehrung NO-LOCK
  851. WHERE Waehrung.Firma = Firma
  852. AND Waehrung.FRW = Liefst.FRW NO-ERROR.
  853. IF NOT AVAILABLE Waehrung THEN LEAVE.
  854. IF DECIMAL(rowObject.L_EP:SCREEN-VALUE) = 0 AND
  855. DECIMAL(rowObject.L_EP_FRW:SCREEN-VALUE) = 0 THEN LEAVE.
  856. IF DECIMAL(FeldInhalt) NE 0 THEN
  857. DO:
  858. Betrag = DECIMAL(FeldInhalt) * Waehrung.Kurs / Waehrung.Faktor.
  859. rowObject.L_EP:SCREEN-VALUE = STRING(Betrag).
  860. LEAVE.
  861. END.
  862. Betrag = DECIMAL(rowObject.L_EP:SCREEN-VALUE) * Waehrung.Faktor / Waehrung.Kurs.
  863. rowObject.L_EP_FRW:SCREEN-VALUE = STRING(Betrag).
  864. LEAVE.
  865. END.
  866. WHEN 'Min_GGebinde' THEN
  867. DO:
  868. IF INTEGER(SELF:SCREEN-VALUE) = 0 THEN LEAVE.
  869. rowObject.Min_VGebinde:SCREEN-VALUE = STRING(INTEGER(SELF:SCREEN-VALUE ) * iGGeb_Inhalt).
  870. rowObject.Min_KGebinde:SCREEN-VALUE = STRING(INTEGER(rowObject.Min_VGebinde:SCREEN-VALUE) * iVGeb_Inhalt).
  871. END.
  872. WHEN 'Min_VGebinde' THEN
  873. DO:
  874. IF INTEGER(SELF:SCREEN-VALUE) = 0 THEN LEAVE.
  875. rowObject.Min_KGebinde:SCREEN-VALUE = STRING(INTEGER(SELF:SCREEN-VALUE ) * iVGeb_Inhalt).
  876. END.
  877. END CASE.
  878. LEAVE.
  879. END.
  880. IF LOOKUP(FeldName, '{&LETZTES_FELD}', ',') > 0 THEN
  881. DO:
  882. DO WHILE TRUE:
  883. IF KEYFUNCTION(LKY) = 'TAB' THEN LEAVE.
  884. IF KEYFUNCTION(LKY) = 'RETURN' THEN LEAVE.
  885. IF KEYFUNCTION(LKY) = 'F9' THEN LEAVE.
  886. RETURN ''.
  887. END.
  888. APPLY 'ALT-S'.
  889. RETURN 'APPLY'.
  890. END.
  891. RETURN ''.
  892. END PROCEDURE.
  893. /* _UIB-CODE-BLOCK-END */
  894. &ANALYZE-RESUME
  895. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE RETURN_FELD vTableWin
  896. PROCEDURE RETURN_FELD :
  897. /*------------------------------------------------------------------------------
  898. Purpose:
  899. Parameters: <none>
  900. Notes:
  901. ------------------------------------------------------------------------------*/
  902. { incl/viwreturnfeld.i }
  903. END PROCEDURE.
  904. /* _UIB-CODE-BLOCK-END */
  905. &ANALYZE-RESUME
  906. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TEST_EINGABEN vTableWin
  907. PROCEDURE TEST_EINGABEN :
  908. /*------------------------------------------------------------------------------
  909. Purpose:
  910. Parameters: <none>
  911. Notes:
  912. ------------------------------------------------------------------------------*/
  913. DEFINE OUTPUT PARAMETER opJa AS LOG NO-UNDO.
  914. DEFINE VARIABLE eHandle AS HANDLE NO-UNDO.
  915. DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
  916. DEFINE VARIABLE iNummer AS INTEGER NO-UNDO.
  917. opJa = FALSE.
  918. eHandle = ?.
  919. IF NOT FMut THEN RETURN.
  920. AAA000:
  921. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  922. IF INTEGER(rowObject.Min_GGebinde:SCREEN-VALUE) > 0 THEN
  923. rowObject.Min_VGebinde:SCREEN-VALUE = STRING(INTEGER(rowObject.Min_GGebinde:SCREEN-VALUE) * INTEGER(rowObject.GGeb_Inhalt:SCREEN-VALUE)).
  924. IF INTEGER(rowObject.Min_VGebinde:SCREEN-VALUE) > 0 THEN
  925. rowObject.Min_KGebinde:SCREEN-VALUE = STRING(INTEGER(rowObject.Min_VGebinde:SCREEN-VALUE) * INTEGER(rowObject.VGeb_Inhalt:SCREEN-VALUE)).
  926. LEAVE.
  927. END.
  928. IF VALID-HANDLE(eHandle) THEN
  929. DO:
  930. APPLY 'ENTRY' TO eHandle.
  931. RETURN NO-APPLY.
  932. END.
  933. opJa = TRUE.
  934. END PROCEDURE.
  935. /* _UIB-CODE-BLOCK-END */
  936. &ANALYZE-RESUME
  937. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateMode vTableWin
  938. PROCEDURE updateMode :
  939. /*------------------------------------------------------------------------------
  940. Purpose: Super Override
  941. Parameters:
  942. Notes:
  943. ------------------------------------------------------------------------------*/
  944. DEFINE INPUT PARAMETER pcMode AS CHARACTER NO-UNDO.
  945. CASE pcMode:
  946. WHEN 'updateBegin' THEN
  947. DO:
  948. RUN refreshRow IN hDaten.
  949. END.
  950. WHEN 'updateEnd' THEN
  951. DO:
  952. END.
  953. END.
  954. RUN SUPER( INPUT pcMode).
  955. CASE pcMode:
  956. WHEN 'updateBegin' THEN
  957. DO:
  958. FMut = TRUE.
  959. END.
  960. WHEN 'updateEnd' THEN
  961. DO:
  962. FNeu = FALSE.
  963. FMut = FALSE.
  964. FCopy = FALSE.
  965. END.
  966. END.
  967. END PROCEDURE.
  968. /* _UIB-CODE-BLOCK-END */
  969. &ANALYZE-RESUME
  970. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateRecord vTableWin
  971. PROCEDURE updateRecord :
  972. /*------------------------------------------------------------------------------
  973. Purpose: Super Override
  974. Parameters:
  975. Notes:
  976. ------------------------------------------------------------------------------*/
  977. DEFINE VARIABLE lArtMut AS LOGICAL NO-UNDO INIT FALSE.
  978. DEFINE VARIABLE iMind_Bestand AS INTEGER NO-UNDO.
  979. DEFINE VARIABLE iSoll_Bestand AS INTEGER NO-UNDO.
  980. DEFINE VARIABLE iMeld_Bestand AS INTEGER NO-UNDO.
  981. DO WITH FRAME {&FRAME-NAME}:
  982. IF FNeu THEN
  983. DO:
  984. DYNAMIC-FUNCTION('SETMODIFIEDFLAG':U, INPUT Fenster, INPUT TRUE).
  985. END.
  986. IF rowObject.Mind_Bestand:MODIFIED OR
  987. rowObject.Soll_Bestand:MODIFIED OR
  988. rowObject.Meld_Bestand:MODIFIED THEN
  989. DO:
  990. ASSIGN
  991. lArtMut = TRUE
  992. iMind_Bestand = INTEGER(rowObject.Mind_Bestand :SCREEN-VALUE)
  993. iSoll_Bestand = INTEGER(rowObject.Soll_Bestand:SCREEN-VALUE)
  994. iMeld_Bestand = INTEGER(rowObject.Meld_Bestand:SCREEN-VALUE)
  995. iArtnr = INTEGER(rowObject.Artnr :SCREEN-VALUE)
  996. iInhalt = INTEGER(rowObject.Inhalt :SCREEN-VALUE)
  997. iJahr = INTEGER(rowObject.Jahr :SCREEN-VALUE).
  998. END.
  999. END.
  1000. FNeu = FALSE.
  1001. FCopy = FALSE.
  1002. RUN SUPER.
  1003. IF lArtMut THEN
  1004. DO:
  1005. REPEAT TRANSACTION ON ERROR UNDO, LEAVE:
  1006. FIND bArtLager
  1007. WHERE bArtLager.Firma = Firma
  1008. AND bArtLager.Artnr = iArtnr
  1009. AND bArtLager.Inhalt = iInhalt
  1010. AND bArtLager.Jahr = iJahr
  1011. AND bArtLager.Lager = iLager.
  1012. ASSIGN
  1013. bArtLager.Mind_Bestand = iMind_Bestand
  1014. bArtLager.Soll_Bestand = iSoll_Bestand
  1015. bArtLager.Meld_Bestand = iMeld_Bestand
  1016. .
  1017. RELEASE bArtLager.
  1018. LEAVE.
  1019. END.
  1020. lArtMut = FALSE.
  1021. END.
  1022. /* Code placed here will execute AFTER standard behavior. */
  1023. END PROCEDURE.
  1024. /* _UIB-CODE-BLOCK-END */
  1025. &ANALYZE-RESUME
  1026. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE viewObject vTableWin
  1027. PROCEDURE viewObject :
  1028. /*------------------------------------------------------------------------------
  1029. Purpose: Super Override
  1030. Parameters:
  1031. Notes:
  1032. ------------------------------------------------------------------------------*/
  1033. { incl/viwviewobject.i }
  1034. RUN SUPER.
  1035. PUBLISH 'GET-LAGER-IN-ARTIKE' ( OUTPUT iLager ).
  1036. IF iLager = ? THEN iLager = 0.
  1037. END PROCEDURE.
  1038. /* _UIB-CODE-BLOCK-END */
  1039. &ANALYZE-RESUME