v-besko.w 47 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401
  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-besko.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 F_Knr
  32. &Scoped-define LETZTES_FELD Kurs
  33. &Scoped-define KEY_FELDER F_Knr
  34. &Scoped-define NUR_LESEN Firma,Lieferant,Faktor,Bnr
  35. { incl/viwdefinition.i }
  36. DEFINE VARIABLE cBenDaten AS CHARACTER NO-UNDO.
  37. DEFINE VARIABLE iLager AS INTEGER NO-UNDO.
  38. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO.
  39. DEFINE VARIABLE cAktRowId AS CHARACTER NO-UNDO.
  40. DEFINE VARIABLE nTotale AS DECIMAL NO-UNDO EXTENT 10.
  41. DEFINE VARIABLE nTotal AS DECIMAL NO-UNDO.
  42. DEFINE VARIABLE iStatus AS INTEGER NO-UNDO.
  43. DEFINE VARIABLE hLastLeave AS HANDLE NO-UNDO.
  44. DEFINE TEMP-TABLE tBesko LIKE Besko
  45. FIELD Lieferant AS CHARACTER
  46. FIELD Lieferungen AS CHARACTER
  47. FIELD BestelltBis AS CHARACTER
  48. FIELD iStatus AS INTEGER
  49. .
  50. DEFINE VARIABLE htBesko AS HANDLE.
  51. htBesko = TEMP-TABLE tBesko:DEFAULT-BUFFER-HANDLE.
  52. {src/adm2/widgetprto.i}
  53. /* _UIB-CODE-BLOCK-END */
  54. &ANALYZE-RESUME
  55. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  56. /* ******************** Preprocessor Definitions ******************** */
  57. &Scoped-define PROCEDURE-TYPE SmartDataViewer
  58. &Scoped-define DB-AWARE no
  59. &Scoped-define ADM-CONTAINER FRAME
  60. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  61. /* Include file with RowObject temp-table definition */
  62. &Scoped-define DATA-FIELD-DEFS "d-besko.i"
  63. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  64. &Scoped-define FRAME-NAME F-Main
  65. /* Standard List Definitions */
  66. &Scoped-Define ENABLED-FIELDS RowObject.Best_Datum RowObject.U_Ref ~
  67. RowObject.Lief_Datum RowObject.Lieferzeit RowObject.I_Best RowObject.Rabatt ~
  68. RowObject.ZusRab RowObject.Spesen RowObject.Besnr RowObject.Buch_Datum ~
  69. RowObject.Bestell_Nr RowObject.Best_Tot RowObject.Kurs RowObject.Abgeholt ~
  70. RowObject.Netto RowObject.Faktor
  71. &Scoped-define ENABLED-TABLES RowObject
  72. &Scoped-define FIRST-ENABLED-TABLE RowObject
  73. &Scoped-Define ENABLED-OBJECTS T_Kopf F_Knr CB_Waehrung T_Schluss ~
  74. T_Bemerkung RECT-2 RECT-3
  75. &Scoped-Define DISPLAYED-FIELDS RowObject.Knr RowObject.Best_Datum ~
  76. RowObject.U_Ref RowObject.Lief_Datum RowObject.Lieferzeit RowObject.I_Best ~
  77. RowObject.Lieferant RowObject.Rabatt RowObject.ZusRab RowObject.Spesen ~
  78. RowObject.Besnr RowObject.Buch_Datum RowObject.Bestell_Nr ~
  79. RowObject.Best_Tot RowObject.SpesenBetr RowObject.Kurs RowObject.Abgeholt ~
  80. RowObject.Schluss RowObject.Bemerkung RowObject.Kopf RowObject.Abholtext ~
  81. RowObject.Firma RowObject.MWST_Nr RowObject.Lief_Bed RowObject.FRW ~
  82. RowObject.Kond RowObject.Gedruckt RowObject.Best_Sta RowObject.Lager ~
  83. RowObject.Verbucht RowObject.BestelltBis RowObject.Lieferungen ~
  84. RowObject.Netto RowObject.Wochentag RowObject.Faktor
  85. &Scoped-define DISPLAYED-TABLES RowObject
  86. &Scoped-define FIRST-DISPLAYED-TABLE RowObject
  87. &Scoped-Define DISPLAYED-OBJECTS T_Kopf F_Knr CB_Waehrung T_Schluss ~
  88. T_Bemerkung
  89. /* Custom List Definitions */
  90. /* ADM-ASSIGN-FIELDS,List-2,List-3,List-4,List-5,List-6 */
  91. /* _UIB-PREPROCESSOR-BLOCK-END */
  92. &ANALYZE-RESUME
  93. /* *********************** Control Definitions ********************** */
  94. /* Definitions of the field level widgets */
  95. DEFINE VARIABLE CB_Waehrung AS CHARACTER FORMAT "X(256)":U
  96. LABEL "Währung"
  97. VIEW-AS COMBO-BOX INNER-LINES 5
  98. LIST-ITEM-PAIRS "Item 1","Item 1"
  99. DROP-DOWN-LIST
  100. SIZE 37.8 BY 1
  101. BGCOLOR 15 NO-UNDO.
  102. DEFINE VARIABLE F_Knr AS CHARACTER FORMAT "x(20)":U
  103. LABEL "Lieferant"
  104. VIEW-AS FILL-IN NATIVE
  105. SIZE 12 BY 1
  106. BGCOLOR 15 NO-UNDO.
  107. DEFINE RECTANGLE RECT-2
  108. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  109. SIZE 190 BY 9.52.
  110. DEFINE RECTANGLE RECT-3
  111. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  112. SIZE 190 BY .1.
  113. DEFINE VARIABLE T_Bemerkung AS LOGICAL INITIAL NO
  114. LABEL "&Bemerkung"
  115. VIEW-AS TOGGLE-BOX
  116. SIZE 16 BY 1 NO-UNDO.
  117. DEFINE VARIABLE T_Kopf AS LOGICAL INITIAL NO
  118. LABEL "&Kopftext"
  119. VIEW-AS TOGGLE-BOX
  120. SIZE 16 BY 1 NO-UNDO.
  121. DEFINE VARIABLE T_Schluss AS LOGICAL INITIAL NO
  122. LABEL "&Schlusstext"
  123. VIEW-AS TOGGLE-BOX
  124. SIZE 16 BY 1 NO-UNDO.
  125. /* ************************ Frame Definitions *********************** */
  126. DEFINE FRAME F-Main
  127. T_Kopf AT ROW 9 COL 130 WIDGET-ID 80 NO-TAB-STOP
  128. F_Knr AT ROW 1.52 COL 11 COLON-ALIGNED WIDGET-ID 74
  129. RowObject.Knr AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 30
  130. LABEL "Lieferant"
  131. VIEW-AS FILL-IN NATIVE
  132. SIZE 4 BY 1
  133. BGCOLOR 15 NO-TAB-STOP
  134. RowObject.Best_Datum AT ROW 5.52 COL 24 COLON-ALIGNED WIDGET-ID 12
  135. LABEL "Bestell-Datum"
  136. VIEW-AS FILL-IN NATIVE
  137. SIZE 16 BY 1
  138. BGCOLOR 15
  139. RowObject.U_Ref AT ROW 5.52 COL 106 COLON-ALIGNED WIDGET-ID 56
  140. LABEL "unsere Referenz"
  141. VIEW-AS FILL-IN NATIVE
  142. SIZE 22 BY 1
  143. BGCOLOR 15
  144. RowObject.Lief_Datum AT ROW 6.52 COL 24 COLON-ALIGNED WIDGET-ID 46
  145. LABEL "Lieferung am"
  146. VIEW-AS FILL-IN NATIVE
  147. SIZE 16 BY 1
  148. BGCOLOR 15
  149. RowObject.Lieferzeit AT ROW 6.52 COL 72 COLON-ALIGNED WIDGET-ID 42
  150. VIEW-AS FILL-IN NATIVE
  151. SIZE 17 BY 1
  152. BGCOLOR 15
  153. RowObject.I_Best AT ROW 6.52 COL 106 COLON-ALIGNED WIDGET-ID 28
  154. LABEL "Ihre Bestellung"
  155. VIEW-AS FILL-IN NATIVE
  156. SIZE 22 BY 1
  157. BGCOLOR 15
  158. RowObject.Lieferant AT ROW 1.52 COL 24 COLON-ALIGNED NO-LABELS WIDGET-ID 40
  159. VIEW-AS FILL-IN NATIVE
  160. SIZE 80 BY 1
  161. BGCOLOR 15 NO-TAB-STOP
  162. RowObject.Rabatt AT ROW 6.52 COL 137.4 COLON-ALIGNED WIDGET-ID 50
  163. VIEW-AS FILL-IN NATIVE
  164. SIZE 10 BY 1
  165. BGCOLOR 15
  166. RowObject.ZusRab AT ROW 6.52 COL 157 COLON-ALIGNED WIDGET-ID 76
  167. VIEW-AS FILL-IN NATIVE
  168. SIZE 10 BY 1
  169. BGCOLOR 15
  170. RowObject.Spesen AT ROW 6.52 COL 178 COLON-ALIGNED WIDGET-ID 54 FORMAT "zz9.99"
  171. VIEW-AS FILL-IN NATIVE
  172. SIZE 10 BY 1
  173. BGCOLOR 15
  174. RowObject.Besnr AT ROW 1.52 COL 113.4 COLON-ALIGNED WIDGET-ID 8
  175. VIEW-AS FILL-IN NATIVE
  176. SIZE 11 BY 1
  177. BGCOLOR 15 NO-TAB-STOP
  178. RowObject.Buch_Datum AT ROW 7.52 COL 24 COLON-ALIGNED WIDGET-ID 18
  179. LABEL "Buchungsdatum"
  180. VIEW-AS FILL-IN NATIVE
  181. SIZE 16 BY 1
  182. BGCOLOR 15
  183. RowObject.Bestell_Nr AT ROW 7.52 COL 106 COLON-ALIGNED WIDGET-ID 10
  184. LABEL "Seine Bestell-Nr"
  185. VIEW-AS FILL-IN NATIVE
  186. SIZE 22 BY 1
  187. BGCOLOR 15
  188. RowObject.Best_Tot AT ROW 1.52 COL 143 COLON-ALIGNED WIDGET-ID 16
  189. LABEL "Bestelltotal"
  190. VIEW-AS FILL-IN NATIVE
  191. SIZE 23 BY 1
  192. BGCOLOR 14 NO-TAB-STOP
  193. CB_Waehrung AT ROW 9 COL 24 COLON-ALIGNED WIDGET-ID 68
  194. RowObject.SpesenBetr AT ROW 2.52 COL 148 COLON-ALIGNED WIDGET-ID 78
  195. LABEL "Spesenbetrag"
  196. VIEW-AS FILL-IN NATIVE
  197. SIZE 18 BY 1
  198. BGCOLOR 15 NO-TAB-STOP
  199. RowObject.Kurs AT ROW 9 COL 68 COLON-ALIGNED WIDGET-ID 36
  200. VIEW-AS FILL-IN NATIVE
  201. SIZE 20.2 BY 1
  202. BGCOLOR 15
  203. RowObject.Abgeholt AT ROW 3 COL 102.8 WIDGET-ID 2
  204. LABEL "Abgeholt"
  205. VIEW-AS TOGGLE-BOX
  206. SIZE 20.2 BY 1
  207. RowObject.Schluss AT ROW 2 COL 100 NO-LABELS WIDGET-ID 52
  208. BGCOLOR 15 NO-TAB-STOP
  209. RowObject.Bemerkung AT ROW 2 COL 100 NO-LABELS WIDGET-ID 6
  210. BGCOLOR 15 NO-TAB-STOP
  211. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS
  212. SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE
  213. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  214. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */
  215. DEFINE FRAME F-Main
  216. RowObject.Kopf AT ROW 2 COL 100 NO-LABELS WIDGET-ID 34
  217. BGCOLOR 15 NO-TAB-STOP
  218. RowObject.Abholtext AT ROW 2 COL 100 NO-LABELS WIDGET-ID 4
  219. VIEW-AS EDITOR
  220. SIZE 4 BY 1
  221. BGCOLOR 15 NO-TAB-STOP
  222. RowObject.Firma AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 22
  223. VIEW-AS FILL-IN NATIVE
  224. SIZE 4 BY 1
  225. BGCOLOR 15 NO-TAB-STOP
  226. RowObject.MWST_Nr AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 48
  227. VIEW-AS FILL-IN NATIVE
  228. SIZE 4 BY 1
  229. BGCOLOR 15 NO-TAB-STOP
  230. RowObject.Lief_Bed AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 44
  231. VIEW-AS FILL-IN NATIVE
  232. SIZE 4 BY 1
  233. BGCOLOR 15 NO-TAB-STOP
  234. RowObject.FRW AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 24
  235. VIEW-AS FILL-IN NATIVE
  236. SIZE 4 BY 1
  237. BGCOLOR 15 NO-TAB-STOP
  238. RowObject.Kond AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 32
  239. VIEW-AS FILL-IN NATIVE
  240. SIZE 4 BY 1
  241. BGCOLOR 15 NO-TAB-STOP
  242. RowObject.Gedruckt AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 26
  243. VIEW-AS FILL-IN NATIVE
  244. SIZE 4 BY 1
  245. BGCOLOR 15 NO-TAB-STOP
  246. RowObject.Best_Sta AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 14
  247. VIEW-AS FILL-IN NATIVE
  248. SIZE 4 BY 1
  249. BGCOLOR 15 NO-TAB-STOP
  250. RowObject.Lager AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 38
  251. VIEW-AS FILL-IN NATIVE
  252. SIZE 4 BY 1
  253. BGCOLOR 15 NO-TAB-STOP
  254. RowObject.Verbucht AT ROW 2 COL 100 COLON-ALIGNED WIDGET-ID 58
  255. VIEW-AS FILL-IN NATIVE
  256. SIZE 4 BY 1
  257. BGCOLOR 15 NO-TAB-STOP
  258. RowObject.BestelltBis AT ROW 3 COL 24 COLON-ALIGNED WIDGET-ID 60
  259. VIEW-AS FILL-IN NATIVE
  260. SIZE 22 BY 1
  261. BGCOLOR 15 NO-TAB-STOP
  262. RowObject.Lieferungen AT ROW 3 COL 63 COLON-ALIGNED WIDGET-ID 62
  263. VIEW-AS FILL-IN NATIVE
  264. SIZE 32 BY 1
  265. BGCOLOR 15 NO-TAB-STOP
  266. RowObject.Netto AT ROW 3.52 COL 143 COLON-ALIGNED WIDGET-ID 66
  267. VIEW-AS FILL-IN NATIVE
  268. SIZE 23 BY 1
  269. BGCOLOR 14 NO-TAB-STOP
  270. RowObject.Wochentag AT ROW 6.52 COL 43 COLON-ALIGNED WIDGET-ID 64
  271. LABEL "/"
  272. VIEW-AS FILL-IN NATIVE
  273. SIZE 18 BY 1
  274. BGCOLOR 15 NO-TAB-STOP
  275. RowObject.Faktor AT ROW 9 COL 97 COLON-ALIGNED WIDGET-ID 20
  276. VIEW-AS FILL-IN NATIVE
  277. SIZE 7.6 BY 1
  278. BGCOLOR 15 NO-TAB-STOP
  279. T_Schluss AT ROW 9 COL 150 WIDGET-ID 82
  280. T_Bemerkung AT ROW 9 COL 170 WIDGET-ID 84
  281. RECT-2 AT ROW 1.24 COL 2 WIDGET-ID 70
  282. RECT-3 AT ROW 4.95 COL 2 WIDGET-ID 72
  283. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS
  284. SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE
  285. AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100.
  286. /* *********************** Procedure Settings ************************ */
  287. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  288. /* Settings for THIS-PROCEDURE
  289. Type: SmartDataViewer
  290. Data Source: "d-besko.w"
  291. Allow: Basic,DB-Fields,Smart
  292. Container Links: Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target
  293. Frames: 1
  294. Add Fields to: Neither
  295. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER
  296. Temp-Tables and Buffers:
  297. TABLE: RowObject D "?" NO-UNDO
  298. ADDITIONAL-FIELDS:
  299. {d-besko.i}
  300. END-FIELDS.
  301. END-TABLES.
  302. */
  303. /* This procedure should always be RUN PERSISTENT. Report the error, */
  304. /* then cleanup and return. */
  305. IF NOT THIS-PROCEDURE:PERSISTENT THEN
  306. DO:
  307. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  308. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  309. RETURN.
  310. END.
  311. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  312. /* ************************* Create Window ************************** */
  313. &ANALYZE-SUSPEND _CREATE-WINDOW
  314. /* DESIGN Window definition (used by the UIB)
  315. CREATE WINDOW vTableWin ASSIGN
  316. HEIGHT = 10.19
  317. WIDTH = 196.6.
  318. /* END WINDOW DEFINITION */
  319. */
  320. &ANALYZE-RESUME
  321. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB vTableWin
  322. /* ************************* Included-Libraries *********************** */
  323. {src/adm2/viewer.i}
  324. /* _UIB-CODE-BLOCK-END */
  325. &ANALYZE-RESUME
  326. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  327. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  328. /* SETTINGS FOR WINDOW vTableWin
  329. VISIBLE,,RUN-PERSISTENT */
  330. /* SETTINGS FOR FRAME F-Main
  331. NOT-VISIBLE FRAME-NAME Size-to-Fit Custom */
  332. ASSIGN
  333. FRAME F-Main:SCROLLABLE = FALSE
  334. FRAME F-Main:HIDDEN = TRUE.
  335. /* SETTINGS FOR TOGGLE-BOX RowObject.Abgeholt IN FRAME F-Main
  336. EXP-LABEL */
  337. /* SETTINGS FOR EDITOR RowObject.Abholtext IN FRAME F-Main
  338. NO-ENABLE EXP-LABEL */
  339. ASSIGN
  340. RowObject.Abholtext:HIDDEN IN FRAME F-Main = TRUE
  341. RowObject.Abholtext:READ-ONLY IN FRAME F-Main = TRUE.
  342. /* SETTINGS FOR EDITOR RowObject.Bemerkung IN FRAME F-Main
  343. NO-ENABLE EXP-LABEL VIEW-AS */
  344. ASSIGN
  345. RowObject.Bemerkung:HIDDEN IN FRAME F-Main = TRUE
  346. RowObject.Bemerkung:READ-ONLY IN FRAME F-Main = TRUE.
  347. ASSIGN
  348. RowObject.Besnr:READ-ONLY IN FRAME F-Main = TRUE.
  349. /* SETTINGS FOR FILL-IN RowObject.BestelltBis IN FRAME F-Main
  350. NO-ENABLE */
  351. ASSIGN
  352. RowObject.BestelltBis:READ-ONLY IN FRAME F-Main = TRUE.
  353. /* SETTINGS FOR FILL-IN RowObject.Bestell_Nr IN FRAME F-Main
  354. EXP-LABEL */
  355. /* SETTINGS FOR FILL-IN RowObject.Best_Datum IN FRAME F-Main
  356. EXP-LABEL */
  357. /* SETTINGS FOR FILL-IN RowObject.Best_Sta IN FRAME F-Main
  358. NO-ENABLE */
  359. ASSIGN
  360. RowObject.Best_Sta:HIDDEN IN FRAME F-Main = TRUE
  361. RowObject.Best_Sta:READ-ONLY IN FRAME F-Main = TRUE.
  362. /* SETTINGS FOR FILL-IN RowObject.Best_Tot IN FRAME F-Main
  363. EXP-LABEL */
  364. ASSIGN
  365. RowObject.Best_Tot:READ-ONLY IN FRAME F-Main = TRUE.
  366. /* SETTINGS FOR FILL-IN RowObject.Buch_Datum IN FRAME F-Main
  367. EXP-LABEL */
  368. ASSIGN
  369. RowObject.Faktor:READ-ONLY IN FRAME F-Main = TRUE.
  370. /* SETTINGS FOR FILL-IN RowObject.Firma IN FRAME F-Main
  371. NO-ENABLE */
  372. ASSIGN
  373. RowObject.Firma:HIDDEN IN FRAME F-Main = TRUE
  374. RowObject.Firma:READ-ONLY IN FRAME F-Main = TRUE.
  375. /* SETTINGS FOR FILL-IN RowObject.FRW IN FRAME F-Main
  376. NO-ENABLE */
  377. ASSIGN
  378. RowObject.FRW:HIDDEN IN FRAME F-Main = TRUE
  379. RowObject.FRW:READ-ONLY IN FRAME F-Main = TRUE.
  380. /* SETTINGS FOR FILL-IN RowObject.Gedruckt IN FRAME F-Main
  381. NO-ENABLE */
  382. ASSIGN
  383. RowObject.Gedruckt:HIDDEN IN FRAME F-Main = TRUE
  384. RowObject.Gedruckt:READ-ONLY IN FRAME F-Main = TRUE.
  385. /* SETTINGS FOR FILL-IN RowObject.I_Best IN FRAME F-Main
  386. EXP-LABEL */
  387. /* SETTINGS FOR FILL-IN RowObject.Knr IN FRAME F-Main
  388. NO-ENABLE EXP-LABEL */
  389. ASSIGN
  390. RowObject.Knr:HIDDEN IN FRAME F-Main = TRUE
  391. RowObject.Knr:READ-ONLY IN FRAME F-Main = TRUE.
  392. /* SETTINGS FOR FILL-IN RowObject.Kond IN FRAME F-Main
  393. NO-ENABLE */
  394. ASSIGN
  395. RowObject.Kond:HIDDEN IN FRAME F-Main = TRUE
  396. RowObject.Kond:READ-ONLY IN FRAME F-Main = TRUE.
  397. /* SETTINGS FOR EDITOR RowObject.Kopf IN FRAME F-Main
  398. NO-ENABLE EXP-LABEL VIEW-AS */
  399. ASSIGN
  400. RowObject.Kopf:HIDDEN IN FRAME F-Main = TRUE
  401. RowObject.Kopf:READ-ONLY IN FRAME F-Main = TRUE.
  402. /* SETTINGS FOR FILL-IN RowObject.Lager IN FRAME F-Main
  403. NO-ENABLE */
  404. ASSIGN
  405. RowObject.Lager:HIDDEN IN FRAME F-Main = TRUE
  406. RowObject.Lager:READ-ONLY IN FRAME F-Main = TRUE.
  407. /* SETTINGS FOR FILL-IN RowObject.Lieferant IN FRAME F-Main
  408. NO-ENABLE */
  409. ASSIGN
  410. RowObject.Lieferant:READ-ONLY IN FRAME F-Main = TRUE.
  411. /* SETTINGS FOR FILL-IN RowObject.Lieferungen IN FRAME F-Main
  412. NO-ENABLE */
  413. ASSIGN
  414. RowObject.Lieferungen:READ-ONLY IN FRAME F-Main = TRUE.
  415. /* SETTINGS FOR FILL-IN RowObject.Lief_Bed IN FRAME F-Main
  416. NO-ENABLE */
  417. ASSIGN
  418. RowObject.Lief_Bed:HIDDEN IN FRAME F-Main = TRUE
  419. RowObject.Lief_Bed:READ-ONLY IN FRAME F-Main = TRUE.
  420. /* SETTINGS FOR FILL-IN RowObject.Lief_Datum IN FRAME F-Main
  421. EXP-LABEL */
  422. /* SETTINGS FOR FILL-IN RowObject.MWST_Nr IN FRAME F-Main
  423. NO-ENABLE */
  424. ASSIGN
  425. RowObject.MWST_Nr:HIDDEN IN FRAME F-Main = TRUE
  426. RowObject.MWST_Nr:READ-ONLY IN FRAME F-Main = TRUE.
  427. ASSIGN
  428. RowObject.Netto:READ-ONLY IN FRAME F-Main = TRUE.
  429. /* SETTINGS FOR EDITOR RowObject.Schluss IN FRAME F-Main
  430. NO-ENABLE EXP-LABEL VIEW-AS */
  431. ASSIGN
  432. RowObject.Schluss:HIDDEN IN FRAME F-Main = TRUE
  433. RowObject.Schluss:READ-ONLY IN FRAME F-Main = TRUE.
  434. /* SETTINGS FOR FILL-IN RowObject.Spesen IN FRAME F-Main
  435. EXP-FORMAT */
  436. /* SETTINGS FOR FILL-IN RowObject.SpesenBetr IN FRAME F-Main
  437. NO-ENABLE EXP-LABEL */
  438. ASSIGN
  439. RowObject.SpesenBetr:READ-ONLY IN FRAME F-Main = TRUE.
  440. /* SETTINGS FOR FILL-IN RowObject.U_Ref IN FRAME F-Main
  441. EXP-LABEL */
  442. /* SETTINGS FOR FILL-IN RowObject.Verbucht IN FRAME F-Main
  443. NO-ENABLE */
  444. ASSIGN
  445. RowObject.Verbucht:HIDDEN IN FRAME F-Main = TRUE
  446. RowObject.Verbucht:READ-ONLY IN FRAME F-Main = TRUE.
  447. /* SETTINGS FOR FILL-IN RowObject.Wochentag IN FRAME F-Main
  448. NO-ENABLE EXP-LABEL */
  449. ASSIGN
  450. RowObject.Wochentag:READ-ONLY IN FRAME F-Main = TRUE.
  451. /* _RUN-TIME-ATTRIBUTES-END */
  452. &ANALYZE-RESUME
  453. /* Setting information for Queries and Browse Widgets fields */
  454. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main
  455. /* Query rebuild information for FRAME F-Main
  456. _Options = "NO-LOCK"
  457. _Query is NOT OPENED
  458. */ /* FRAME F-Main */
  459. &ANALYZE-RESUME
  460. /* ************************ Control Triggers ************************ */
  461. &Scoped-define SELF-NAME RowObject.Abgeholt
  462. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Abgeholt vTableWin
  463. ON VALUE-CHANGED OF RowObject.Abgeholt IN FRAME F-Main /* Abgeholt */
  464. DO:
  465. RUN 'g-einlesen-editor.w' ( SELF:LABEL, FMut, rowObject.Abholtext:HANDLE ) NO-ERROR.
  466. IF NOT FMut THEN
  467. DO:
  468. SELF:SCREEN-VALUE = STRING(NOT(LOGICAL(SELF:SCREEN-VALUE)),'TRUE/FASLE').
  469. APPLY 'U1'.
  470. RETURN NO-APPLY.
  471. END.
  472. IF rowObject.Abholtext:SCREEN-VALUE <> '' THEN SELF:SCREEN-VALUE = 'TRUE'.
  473. RETURN NO-APPLY.
  474. END.
  475. /* _UIB-CODE-BLOCK-END */
  476. &ANALYZE-RESUME
  477. &Scoped-define SELF-NAME CB_Waehrung
  478. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Waehrung vTableWin
  479. ON VALUE-CHANGED OF CB_Waehrung IN FRAME F-Main /* Währung */
  480. DO:
  481. DO WITH FRAME {&FRAME-NAME}:
  482. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Frw:SCREEN-VALUE.
  483. rowObject.FRW:SCREEN-VALUE = SELF:SCREEN-VALUE.
  484. FIND Waehrung NO-LOCK
  485. WHERE Waehrung.Firma = Firma
  486. AND Waehrung.FRW = SELF:SCREEN-VALUE NO-ERROR.
  487. rowObject.Kurs :SCREEN-VALUE = STRING(Waehrung.Kurs).
  488. rowObject.Faktor:SCREEN-VALUE = STRING(Waehrung.Faktor).
  489. END.
  490. END.
  491. /* _UIB-CODE-BLOCK-END */
  492. &ANALYZE-RESUME
  493. &Scoped-define SELF-NAME F_Knr
  494. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Knr vTableWin
  495. ON ALT-F OF F_Knr IN FRAME F-Main /* Lieferant */
  496. DO:
  497. DEFINE VARIABLE iRecid AS RECID NO-UNDO.
  498. DEFINE BUFFER bAdresse FOR Adresse.
  499. DEFINE BUFFER bLiefst FOR Liefst.
  500. IF NOT FNeu THEN RETURN NO-APPLY.
  501. iRecid = ?.
  502. RUN g-suchen-adresse.w ( INPUT 'LIE;', OUTPUT iRecid ).
  503. IF iRecid = ? THEN RETURN.
  504. IF iRecid = 0 THEN RETURN.
  505. FIND bAdresse NO-LOCK WHERE RECID(bAdresse) = iRecid NO-ERROR.
  506. rowObject.Knr:SCREEN-VALUE = STRING(bAdresse.Knr).
  507. F_Knr :SCREEN-VALUE = STRING(bAdresse.Knr).
  508. RELEASE bAdresse.
  509. APPLY 'ENTRY' TO rowObject.Best_Datum.
  510. RETURN NO-APPLY.
  511. END.
  512. /* _UIB-CODE-BLOCK-END */
  513. &ANALYZE-RESUME
  514. &Scoped-define SELF-NAME T_Bemerkung
  515. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Bemerkung vTableWin
  516. ON VALUE-CHANGED OF T_Bemerkung IN FRAME F-Main /* Bemerkung */
  517. DO:
  518. RUN 'g-einlesen-editor.w' ( SELF:LABEL, FMut, rowObject.Bemerkung:HANDLE ) NO-ERROR.
  519. SELF:SCREEN-VALUE = (IF rowObject.Bemerkung:SCREEN-VALUE = '' THEN STRING(FALSE) ELSE STRING(TRUE)).
  520. IF NOT FMut THEN APPLY 'U1'.
  521. ELSE APPLY 'ENTRY' TO hLastLeave.
  522. RETURN NO-APPLY.
  523. END.
  524. /* _UIB-CODE-BLOCK-END */
  525. &ANALYZE-RESUME
  526. &Scoped-define SELF-NAME T_Kopf
  527. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Kopf vTableWin
  528. ON VALUE-CHANGED OF T_Kopf IN FRAME F-Main /* Kopftext */
  529. DO:
  530. RUN 'g-einlesen-editor.w' ( SELF:LABEL, FMut, rowObject.Kopf:HANDLE ) NO-ERROR.
  531. SELF:SCREEN-VALUE = (IF rowObject.Kopf:SCREEN-VALUE = '' THEN STRING(FALSE) ELSE STRING(TRUE)).
  532. IF NOT FMut THEN APPLY 'U1'.
  533. ELSE APPLY 'ENTRY' TO hLastLeave.
  534. RETURN NO-APPLY.
  535. END.
  536. /* _UIB-CODE-BLOCK-END */
  537. &ANALYZE-RESUME
  538. &Scoped-define SELF-NAME T_Schluss
  539. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Schluss vTableWin
  540. ON VALUE-CHANGED OF T_Schluss IN FRAME F-Main /* Schlusstext */
  541. DO:
  542. RUN 'g-einlesen-editor.w' ( SELF:LABEL, FMut, rowObject.Schluss:HANDLE ) NO-ERROR.
  543. SELF:SCREEN-VALUE = (IF rowObject.Schluss:SCREEN-VALUE = '' THEN STRING(FALSE) ELSE STRING(TRUE)).
  544. IF NOT FMut THEN APPLY 'U1'.
  545. ELSE APPLY 'ENTRY' TO hLastLeave.
  546. RETURN NO-APPLY.
  547. END.
  548. /* _UIB-CODE-BLOCK-END */
  549. &ANALYZE-RESUME
  550. &UNDEFINE SELF-NAME
  551. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK vTableWin
  552. /* *************************** Main Block *************************** */
  553. ON 'PAGE-DOWN':U OF FRAME {&FRAME-NAME} ANYWHERE
  554. DO:
  555. FMut = DYNAMIC-FUNCTION('getMutFlag':U, Progname ).
  556. IF NOT FMut THEN RETURN NO-APPLY.
  557. RUN 'TOOLBAR' IN hKontainer ('SAVE') NO-ERROR.
  558. RUN selectPage IN hKontainer ( 2 ).
  559. RETURN NO-APPLY.
  560. END.
  561. { incl/viwmainblock.i }
  562. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  563. RUN initializeObject.
  564. &ENDIF
  565. /************************ INTERNAL PROCEDURES ********************/
  566. /* _UIB-CODE-BLOCK-END */
  567. &ANALYZE-RESUME
  568. /* ********************** Internal Procedures *********************** */
  569. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE addRecord vTableWin
  570. PROCEDURE addRecord :
  571. /*------------------------------------------------------------------------------*/
  572. /* Purpose: */
  573. /* Parameters: <none> */
  574. /* Notes: */
  575. /*------------------------------------------------------------------------------*/
  576. DYNAMIC-FUNCTION('setStatus':U IN hKontainer, 1 ) NO-ERROR.
  577. FNeu = TRUE.
  578. FMut = TRUE.
  579. FDisp = TRUE.
  580. RUN SUPER.
  581. /* Code placed here will execute AFTER standard behavior. */
  582. END PROCEDURE.
  583. /* _UIB-CODE-BLOCK-END */
  584. &ANALYZE-RESUME
  585. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE cancelRecord vTableWin
  586. PROCEDURE cancelRecord :
  587. /*------------------------------------------------------------------------------*/
  588. /* Purpose: */
  589. /* Parameters: <none> */
  590. /* Notes: */
  591. /*------------------------------------------------------------------------------*/
  592. FCancel = TRUE.
  593. RUN SUPER.
  594. /* Code placed here will execute AFTER standard behavior. */
  595. END PROCEDURE.
  596. /* _UIB-CODE-BLOCK-END */
  597. &ANALYZE-RESUME
  598. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE copyRecord vTableWin
  599. PROCEDURE copyRecord :
  600. /*------------------------------------------------------------------------------*/
  601. /* Purpose: */
  602. /* Parameters: <none> */
  603. /* Notes: */
  604. /*------------------------------------------------------------------------------*/
  605. FNeu = TRUE.
  606. FMut = TRUE.
  607. FCopy = TRUE.
  608. FDisp = TRUE.
  609. RUN SUPER.
  610. END PROCEDURE.
  611. /* _UIB-CODE-BLOCK-END */
  612. &ANALYZE-RESUME
  613. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE deleteRecord vTableWin
  614. PROCEDURE deleteRecord :
  615. /*------------------------------------------------------------------------------*/
  616. /* Purpose: Super Override */
  617. /* Parameters: */
  618. /* Note */
  619. /*------------------------------------------------------------------------------*/
  620. DEFINE VARIABLE lJa AS LOG NO-UNDO.
  621. DEFINE VARIABLE rBesko AS RECID NO-UNDO.
  622. DEFINE BUFFER bBesko FOR Besko.
  623. rBesko = DYNAMIC-FUNCTION ('getCurrentRecid':U IN hDaten) NO-ERROR.
  624. FIND bBesko NO-LOCK WHERE RECID(bBesko) = rBesko.
  625. lJa = TRUE.
  626. IF bBesko.Best_Sta > 2 THEN lJa = FALSE.
  627. FIND FIRST BesEing NO-LOCK OF bBesko NO-ERROR.
  628. IF AVAILABLE BesEing THEN lJa = FALSE.
  629. IF NOT lJa THEN
  630. DO:
  631. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR.
  632. RETURN NO-APPLY.
  633. END.
  634. lJa = DYNAMIC-FUNCTION( 'ANTWORT_NEIN':U, INPUT 1000 ).
  635. IF NOT lJa THEN
  636. DO:
  637. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR.
  638. RETURN NO-APPLY.
  639. END.
  640. REPEAT TRANSACTION ON ERROR UNDO, LEAVE:
  641. FOR EACH Besze OF Besko:
  642. DELETE Besze.
  643. END.
  644. FOR EACH BesGebKo OF Besko:
  645. DELETE BesGebKo.
  646. END.
  647. RUN SUPER.
  648. LEAVE.
  649. END.
  650. /* Code placed here will execute AFTER standard behavior. */
  651. END PROCEDURE.
  652. /* _UIB-CODE-BLOCK-END */
  653. &ANALYZE-RESUME
  654. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disableFields vTableWin
  655. PROCEDURE disableFields :
  656. /*------------------------------------------------------------------------------
  657. Purpose: Super Override
  658. Parameters:
  659. Notes:
  660. ------------------------------------------------------------------------------*/
  661. DEFINE INPUT PARAMETER pcFieldType AS CHARACTER NO-UNDO.
  662. DO WITH FRAME {&FRAME-NAME}:
  663. END.
  664. RUN SUPER( INPUT pcFieldType).
  665. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  666. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ).
  667. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN
  668. DO:
  669. RUN FARBE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT 15 ).
  670. END.
  671. DO WITH FRAME {&FRAME-NAME}:
  672. END.
  673. END PROCEDURE.
  674. /* _UIB-CODE-BLOCK-END */
  675. &ANALYZE-RESUME
  676. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI vTableWin _DEFAULT-DISABLE
  677. PROCEDURE disable_UI :
  678. /*------------------------------------------------------------------------------
  679. Purpose: DISABLE the User Interface
  680. Parameters: <none>
  681. Notes: Here we clean-up the user-interface by deleting
  682. dynamic widgets we have created and/or hide
  683. frames. This procedure is usually called when
  684. we are ready to "clean-up" after running.
  685. ------------------------------------------------------------------------------*/
  686. /* Hide all frames. */
  687. HIDE FRAME F-Main.
  688. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  689. END PROCEDURE.
  690. /* _UIB-CODE-BLOCK-END */
  691. &ANALYZE-RESUME
  692. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE displayFields vTableWin
  693. PROCEDURE displayFields :
  694. /*------------------------------------------------------------------------------
  695. Purpose: Super Override
  696. Parameters:
  697. Notes:
  698. ------------------------------------------------------------------------------*/
  699. DEFINE INPUT PARAMETER pcColValues AS CHARACTER NO-UNDO.
  700. DEFINE VARIABLE dDatum AS DATE NO-UNDO.
  701. IF NOT FDisp THEN
  702. DO:
  703. FDisp = TRUE.
  704. RETURN.
  705. END.
  706. cAktRowId = ENTRY(1, pcColValues, CHR(01)).
  707. IF FCancel THEN pcColValues = OldColValues.
  708. IF NOT FNeu THEN OldColValues = pcColValues.
  709. OldColList = DYNAMIC-FUNCTION('getDisplayedFields':U).
  710. IF FNeu THEN RUN FEHLWERTE ( INPUT-OUTPUT pcColValues ).
  711. DO WITH FRAME {&FRAME-NAME}:
  712. END.
  713. RUN SUPER( INPUT pcColValues).
  714. FCancel = FALSE.
  715. DO WITH FRAME {&FRAME-NAME}:
  716. F_Knr :SCREEN-VALUE = rowObject.Knr:SCREEN-VALUE.
  717. CB_Waehrung:SCREEN-VALUE = rowObject.Frw:SCREEN-VALUE.
  718. iKnr = INTEGER(rowObject.Knr:SCREEN-VALUE).
  719. dDatum = DATE(rowObject.Lief_Datum:SCREEN-VALUE) NO-ERROR.
  720. IF NOT ERROR-STATUS:ERROR AND
  721. rowObject.Wochentag:SCREEN-VALUE = '' THEN rowObject.Wochentag:SCREEN-VALUE = DYNAMIC-FUNCTION ('getWochentag':U, dDatum) NO-ERROR.
  722. T_Bemerkung:SCREEN-VALUE = (IF rowObject.Bemerkung:SCREEN-VALUE = '' THEN STRING(FALSE) ELSE STRING(TRUE)).
  723. T_Schluss :SCREEN-VALUE = (IF rowObject.Schluss :SCREEN-VALUE = '' THEN STRING(FALSE) ELSE STRING(TRUE)).
  724. T_Kopf :SCREEN-VALUE = (IF rowObject.Kopf :SCREEN-VALUE = '' THEN STRING(FALSE) ELSE STRING(TRUE)).
  725. END.
  726. END PROCEDURE.
  727. /* _UIB-CODE-BLOCK-END */
  728. &ANALYZE-RESUME
  729. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableFields vTableWin
  730. PROCEDURE enableFields :
  731. /*------------------------------------------------------------------------------
  732. Purpose: Super Override
  733. Parameters:
  734. Notes:
  735. ------------------------------------------------------------------------------*/
  736. /*
  737. RUN SUPER.
  738. */
  739. IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION.
  740. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT FALSE ).
  741. IF NUM-ENTRIES('{&NUR_LESEN}', ',') > 0 THEN
  742. DO:
  743. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&NUR_LESEN}', INPUT TRUE ).
  744. END.
  745. DO WITH FRAME {&FRAME-NAME}:
  746. END.
  747. IF FNeu THEN RETURN.
  748. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN
  749. DO:
  750. RUN SCHUETZE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT TRUE ).
  751. END.
  752. cBenDaten = DYNAMIC-FUNCTION('getBenutzerDaten':U) NO-ERROR.
  753. END PROCEDURE.
  754. /* _UIB-CODE-BLOCK-END */
  755. &ANALYZE-RESUME
  756. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject vTableWin
  757. PROCEDURE enableObject :
  758. /*------------------------------------------------------------------------------
  759. Purpose: Super Override
  760. Parameters:
  761. Notes:
  762. ------------------------------------------------------------------------------*/
  763. DO WITH FRAME {&FRAME-NAME}:
  764. RUN COMBO_FRW ( CB_Waehrung:HANDLE ) NO-ERROR.
  765. END.
  766. RUN SUPER.
  767. { incl/viwenableobject.i }
  768. END PROCEDURE.
  769. /* _UIB-CODE-BLOCK-END */
  770. &ANALYZE-RESUME
  771. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_FELD_TEST vTableWin
  772. PROCEDURE ENTRY_FELD_TEST :
  773. /*------------------------------------------------------------------------------
  774. Purpose:
  775. Parameters: <none>
  776. Notes:
  777. ------------------------------------------------------------------------------*/
  778. { incl/viwentryfeldtest.i }
  779. DO WITH FRAME {&FRAME-NAME}:
  780. CASE FeldName:
  781. END CASE.
  782. END.
  783. RETURN ''.
  784. END PROCEDURE.
  785. /* _UIB-CODE-BLOCK-END */
  786. &ANALYZE-RESUME
  787. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FEHLWERTE vTableWin
  788. PROCEDURE FEHLWERTE :
  789. /*------------------------------------------------------------------------------
  790. Purpose:
  791. Parameters: <none>
  792. Notes:
  793. ------------------------------------------------------------------------------*/
  794. DEFINE INPUT-OUTPUT PARAMETER pcColValues AS CHARACTER NO-UNDO.
  795. DEFINE VARIABLE i1 AS INTEGER NO-UNDO.
  796. IF FCancel THEN RETURN.
  797. IF NOT FCopy THEN
  798. DO WITH FRAME {&FRAME-NAME}:
  799. i1 = LOOKUP('Firma', oldColList, ',') + 1.
  800. ENTRY(i1, pcColValues, CHR(1)) = Firma NO-ERROR.
  801. i1 = LOOKUP('Best_Sta', oldColList, ',') + 1.
  802. ENTRY(i1, pcColValues, CHR(1)) = STRING(1) NO-ERROR.
  803. i1 = LOOKUP('U_Ref', oldColList, ',') + 1.
  804. ENTRY(i1, pcColValues, CHR(1)) = ENTRY(2, cBenutzerDaten, CHR(01)) NO-ERROR.
  805. i1 = LOOKUP('Lager', oldColList, ',') + 1.
  806. ENTRY(i1, pcColValues, CHR(1)) = STRING(iLager) NO-ERROR.
  807. END.
  808. IF FCopy THEN
  809. DO:
  810. END.
  811. END PROCEDURE.
  812. /* _UIB-CODE-BLOCK-END */
  813. &ANALYZE-RESUME
  814. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject vTableWin
  815. PROCEDURE initializeObject :
  816. /*------------------------------------------------------------------------------
  817. Purpose: Super Override
  818. Parameters:
  819. Notes:
  820. ------------------------------------------------------------------------------*/
  821. /* Code placed here will execute PRIOR to standard behavior. */
  822. RUN SUPER.
  823. iLager = DYNAMIC-FUNCTION('getLager':U IN hKontainer) NO-ERROR.
  824. END PROCEDURE.
  825. /* _UIB-CODE-BLOCK-END */
  826. &ANALYZE-RESUME
  827. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEAVE_FELD_TEST vTableWin
  828. PROCEDURE LEAVE_FELD_TEST :
  829. /*------------------------------------------------------------------------------
  830. Purpose:
  831. Parameters: <none>
  832. Notes:
  833. ------------------------------------------------------------------------------*/
  834. { incl/viwleavefeldtest.i }
  835. DEFINE VARIABLE cKontakt AS CHARACTER NO-UNDO.
  836. DEFINE VARIABLE iRecid AS RECID NO-UNDO.
  837. DEFINE VARIABLE lOK AS LOGICAL NO-UNDO.
  838. DEFINE BUFFER bAdresse FOR Adresse.
  839. hLastLeave = ipHandle.
  840. DO WHILE FNeu WITH FRAME {&FRAME-NAME}:
  841. CASE FeldName:
  842. WHEN 'F_Knr' THEN
  843. DO:
  844. iKnr = INTEGER(SELF:SCREEN-VALUE) NO-ERROR.
  845. IF ERROR-STATUS:ERROR THEN
  846. DO:
  847. iRecid = ?.
  848. RUN g-suchen-adresse.w ( INPUT SUBSTITUTE('LIE;&1', SELF:SCREEN-VALUE), OUTPUT iRecid ).
  849. IF iRecid = ? OR
  850. iRecid = 0 THEN
  851. DO:
  852. RETURN 'APPLY'.
  853. END.
  854. FIND bAdresse NO-LOCK WHERE RECID(bAdresse) = iRecid NO-ERROR.
  855. iKnr = bAdresse.Knr.
  856. END.
  857. EMPTY TEMP-TABLE tBesko.
  858. CREATE tBesko.
  859. ASSIGN
  860. tBesko.Firma = Firma
  861. tBesko.Knr = iKnr
  862. tBesko.Best_Datum = TODAY
  863. tBesko.iStatus = 0.
  864. lOK = DYNAMIC-FUNCTION ('filltBesko':U, INPUT-OUTPUT htBesko ) NO-ERROR.
  865. IF NOT lOK THEN RETURN 'ERROR'.
  866. FIND FIRST tBesko.
  867. RUN TEMP_TABLE_TO_SCREEN ( htBesko ).
  868. END.
  869. END CASE.
  870. LEAVE.
  871. END.
  872. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  873. CASE FeldName:
  874. WHEN 'Lief_Datum' THEN
  875. DO:
  876. rowObject.Wochentag:SCREEN-VALUE = DYNAMIC-FUNCTION('getWochenTag':U, DATE(rowObject.Lief_Datum:SCREEN-VALUE) ) NO-ERROR.
  877. END.
  878. END CASE.
  879. LEAVE.
  880. END.
  881. IF LOOKUP(FeldName, '{&LETZTES_FELD}', ',') > 0 THEN
  882. DO:
  883. DO WHILE TRUE:
  884. IF KEYFUNCTION(LKY) = 'TAB' THEN LEAVE.
  885. IF KEYFUNCTION(LKY) = 'RETURN' THEN LEAVE.
  886. IF KEYFUNCTION(LKY) = 'F9' THEN LEAVE.
  887. RETURN ''.
  888. END.
  889. APPLY 'ALT-S'.
  890. RETURN 'APPLY'.
  891. END.
  892. RETURN ''.
  893. END PROCEDURE.
  894. /* _UIB-CODE-BLOCK-END */
  895. &ANALYZE-RESUME
  896. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE RETURN_FELD vTableWin
  897. PROCEDURE RETURN_FELD :
  898. /*------------------------------------------------------------------------------
  899. Purpose:
  900. Parameters: <none>
  901. Notes:
  902. ------------------------------------------------------------------------------*/
  903. { incl/viwreturnfeld.i }
  904. END PROCEDURE.
  905. /* _UIB-CODE-BLOCK-END */
  906. &ANALYZE-RESUME
  907. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TEMP_TABLE_TO_SCREEN vTableWin
  908. PROCEDURE TEMP_TABLE_TO_SCREEN :
  909. /*------------------------------------------------------------------------------
  910. Purpose:
  911. Notes:
  912. ------------------------------------------------------------------------------*/
  913. DEFINE INPUT PARAMETER ipHandle AS HANDLE NO-UNDO.
  914. DEFINE VARIABLE ii AS INTEGER NO-UNDO.
  915. DEFINE VARIABLE i1 AS INTEGER NO-UNDO.
  916. DEFINE VARIABLE cColList AS CHARACTER NO-UNDO.
  917. DEFINE VARIABLE cColValues AS CHARACTER NO-UNDO.
  918. DEFINE VARIABLE cFeld AS CHARACTER NO-UNDO.
  919. DEFINE VARIABLE hFeld AS HANDLE NO-UNDO.
  920. DEFINE VARIABLE cKunde AS CHARACTER NO-UNDO.
  921. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO.
  922. cColList = DYNAMIC-FUNCTION('getDisplayedFields':U).
  923. ii = NUM-ENTRIES(cColList, ',') + 1.
  924. cColValues = FILL(CHR(01), ii).
  925. DO ii = 1 TO ipHandle:NUM-FIELDS:
  926. cFeld = ipHandle:BUFFER-FIELD(ii):NAME.
  927. i1 = LOOKUP(cFeld, cColList, ',') + 1 NO-ERROR.
  928. IF i1 < 2 THEN NEXT.
  929. hFeld = ipHandle:BUFFER-FIELD(ii) NO-ERROR.
  930. IF NOT VALID-HANDLE ( hFeld ) THEN NEXT.
  931. IF hFeld:EXTENT > 1 THEN NEXT.
  932. IF hFeld:BUFFER-VALUE = ? THEN NEXT.
  933. ENTRY(i1, cColValues, CHR(1)) = ipHandle:BUFFER-FIELD(ii):BUFFER-VALUE NO-ERROR.
  934. END.
  935. IF cAktRowId <> ? THEN ENTRY(1, cColValues, CHR(01)) = cAktRowId.
  936. RUN displayFields ( cColValues ).
  937. END PROCEDURE.
  938. /* _UIB-CODE-BLOCK-END */
  939. &ANALYZE-RESUME
  940. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TEST_EINGABEN vTableWin
  941. PROCEDURE TEST_EINGABEN :
  942. /*------------------------------------------------------------------------------
  943. Purpose:
  944. Parameters: <none>
  945. Notes:
  946. ------------------------------------------------------------------------------*/
  947. DEFINE OUTPUT PARAMETER opJa AS LOG NO-UNDO.
  948. DEFINE VARIABLE eHandle AS HANDLE NO-UNDO.
  949. DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
  950. DEFINE VARIABLE iNummer AS INTEGER NO-UNDO.
  951. DEFINE VARIABLE dDatum AS DATE NO-UNDO.
  952. DEFINE VARIABLE nKurs AS DECIMAL NO-UNDO DECIMALS 4.
  953. DEFINE VARIABLE cFrw AS CHARACTER NO-UNDO.
  954. opJa = FALSE.
  955. eHandle = ?.
  956. IF NOT FMut THEN RETURN.
  957. AAA000:
  958. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  959. IF FNeu THEN
  960. DO:
  961. rowObject.Besnr:SCREEN-VALUE = DYNAMIC-FUNCTION('createBestellnummer':U, Firma ) NO-ERROR.
  962. IF INTEGER(rowObject.Besnr:SCREEN-VALUE) = 0 THEN
  963. DO:
  964. RUN FEHLER ( 1106 ).
  965. eHandle = rowObject.Knr:HANDLE.
  966. LEAVE.
  967. END.
  968. END.
  969. dDatum = DATE(rowObject.Best_Datum:SCREEN-VALUE) NO-ERROR.
  970. IF dDatum = ? THEN
  971. DO:
  972. RUN FEHLER ( 96 ).
  973. eHandle = rowObject.Best_Datum:HANDLE.
  974. LEAVE.
  975. END.
  976. dDatum = DATE(rowObject.Lief_Datum:SCREEN-VALUE) NO-ERROR.
  977. IF dDatum = ? THEN
  978. DO:
  979. RUN FEHLER ( 96 ).
  980. eHandle = rowObject.Lief_Datum:HANDLE.
  981. LEAVE.
  982. END.
  983. cFrw = rowObject.Frw:SCREEN-VALUE.
  984. FIND Waehrung NO-LOCK
  985. WHERE Waehrung.Firma = Firma
  986. AND Waehrung.FRW = cFrw NO-ERROR.
  987. IF NOT AVAILABLE Waehrung THEN
  988. DO:
  989. RUN FEHLER ( 6004 ).
  990. eHandle = rowObject.Lief_Datum:HANDLE.
  991. LEAVE.
  992. END.
  993. rowObject.Faktor:SCREEN-VALUE = STRING(Waehrung.Faktor).
  994. IF FNeu THEN rowObject.Kurs:SCREEN-VALUE = STRING(Waehrung.Kurs).
  995. nKurs = DECIMAL(rowObject.Kurs:SCREEN-VALUE) NO-ERROR.
  996. IF ERROR-STATUS:ERROR OR
  997. nKurs = ? THEN
  998. DO:
  999. RUN FEHLER ( 6019 ).
  1000. eHandle = rowObject.Lief_Datum:HANDLE.
  1001. LEAVE.
  1002. END.
  1003. LEAVE.
  1004. END.
  1005. IF VALID-HANDLE(eHandle) THEN
  1006. DO:
  1007. APPLY 'ENTRY' TO eHandle.
  1008. RETURN NO-APPLY.
  1009. END.
  1010. opJa = TRUE.
  1011. END PROCEDURE.
  1012. /* _UIB-CODE-BLOCK-END */
  1013. &ANALYZE-RESUME
  1014. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateMode vTableWin
  1015. PROCEDURE updateMode :
  1016. /*------------------------------------------------------------------------------
  1017. Purpose: Super Override
  1018. Parameters:
  1019. Notes:
  1020. ------------------------------------------------------------------------------*/
  1021. DEFINE INPUT PARAMETER pcMode AS CHARACTER NO-UNDO.
  1022. CASE pcMode:
  1023. WHEN 'updateBegin' THEN
  1024. DO:
  1025. END.
  1026. WHEN 'updateEnd' THEN
  1027. DO:
  1028. END.
  1029. END.
  1030. RUN SUPER( INPUT pcMode).
  1031. CASE pcMode:
  1032. WHEN 'updateBegin' THEN
  1033. DO:
  1034. FMut = TRUE.
  1035. END.
  1036. WHEN 'updateEnd' THEN
  1037. DO:
  1038. FNeu = FALSE.
  1039. FMut = FALSE.
  1040. FCopy = FALSE.
  1041. END.
  1042. END.
  1043. END PROCEDURE.
  1044. /* _UIB-CODE-BLOCK-END */
  1045. &ANALYZE-RESUME
  1046. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateRecord vTableWin
  1047. PROCEDURE updateRecord :
  1048. /*------------------------------------------------------------------------------
  1049. Purpose: Super Override
  1050. Parameters:
  1051. Notes:
  1052. ------------------------------------------------------------------------------*/
  1053. DEFINE VARIABLE lMut AS LOGICAL NO-UNDO INIT FALSE.
  1054. DEFINE VARIABLE iBesnr AS INTEGER NO-UNDO.
  1055. DEFINE VARIABLE nKurs AS DECIMAL NO-UNDO DECIMALS 4.
  1056. DEFINE VARIABLE lNeu AS LOGICAL NO-UNDO.
  1057. DEFINE VARIABLE iRecid AS RECID NO-UNDO.
  1058. lNeu = FNeu.
  1059. DO WITH FRAME {&FRAME-NAME}:
  1060. IF FNeu THEN
  1061. DO:
  1062. DYNAMIC-FUNCTION('SETMODIFIEDFLAG':U, INPUT Fenster, INPUT TRUE).
  1063. END.
  1064. IF rowobject.Kurs :MODIFIED THEN ASSIGN lMut = TRUE.
  1065. IF rowobject.Spesen:MODIFIED THEN ASSIGN lMut = TRUE.
  1066. IF rowobject.Rabatt:MODIFIED THEN ASSIGN lMut = TRUE.
  1067. IF rowobject.ZusRab:MODIFIED THEN ASSIGN lMut = TRUE.
  1068. iBesnr = INTEGER(rowObject.Besnr:SCREEN-VALUE) NO-ERROR.
  1069. nKurs = DECIMAL(rowObject.Kurs :SCREEN-VALUE) NO-ERROR.
  1070. END.
  1071. FNeu = FALSE.
  1072. FCopy = FALSE.
  1073. RUN SUPER.
  1074. REPEAT TRANSACTION:
  1075. IF NOT lMut THEN LEAVE.
  1076. DO WITH FRAME {&FRAME-NAME}:
  1077. FOR EACH Besze
  1078. WHERE Besze.Firma = Firma
  1079. AND Besze.Besnr = iBesnr
  1080. AND Besze.Artnr > 0:
  1081. IF lMut THEN
  1082. DO:
  1083. ASSIGN
  1084. Besze.Frw = rowObject.Frw :SCREEN-VALUE
  1085. Besze.Kurs = nKurs
  1086. Besze.Spesen = DECIMAL(rowObject.Spesen:SCREEN-VALUE)
  1087. Besze.Rabatt = DECIMAL(rowObject.Rabatt:SCREEN-VALUE)
  1088. Besze.ZusRab = DECIMAL(rowObject.ZusRab:SCREEN-VALUE)
  1089. Besze.L_EP = Besze.L_EP_FRW * nKurs
  1090. Besze.S_Preis = Besze.S_Preis_FRW * nKurs.
  1091. END.
  1092. iRecid = RECID(Besze).
  1093. RELEASE Besze.
  1094. DYNAMIC-FUNCTION ('calculateBeszeNetto':U, '', 0, 0, iRecid ).
  1095. END.
  1096. RELEASE Besze.
  1097. nTotal = DYNAMIC-FUNCTION ('calculateBeskoTotal':U, Firma, iBesnr, OUTPUT nTotale ) NO-ERROR.
  1098. END.
  1099. IF NOT lNeu THEN LEAVE.
  1100. DYNAMIC-FUNCTION ('createBesGebKo':U, Firma, iBesnr) NO-ERROR.
  1101. LEAVE.
  1102. END.
  1103. END PROCEDURE.
  1104. /* _UIB-CODE-BLOCK-END */
  1105. &ANALYZE-RESUME
  1106. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE viewObject vTableWin
  1107. PROCEDURE viewObject :
  1108. /*------------------------------------------------------------------------------*/
  1109. /* Purpose: */
  1110. /* Notes: */
  1111. /*------------------------------------------------------------------------------*/
  1112. iStatus = DYNAMIC-FUNCTION ('getStatus':U IN hKontainer ) NO-ERROR.
  1113. RUN SUPER.
  1114. PUBLISH 'REFRESHBESKO'.
  1115. END PROCEDURE.
  1116. /* _UIB-CODE-BLOCK-END */
  1117. &ANALYZE-RESUME