f-aufgebko.w 52 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. anadat PROGRESS
  5. */
  6. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  7. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS fFrameWin
  8. /*------------------------------------------------------------------------
  9. File:
  10. Description: from cntnrfrm.w - ADM2 SmartFrame Template
  11. Input Parameters:
  12. <none>
  13. Output Parameters:
  14. <none>
  15. ------------------------------------------------------------------------*/
  16. /* This .W file was created with the Progress AppBuilder. */
  17. /*----------------------------------------------------------------------*/
  18. /* Create an unnamed pool to store all the widgets created
  19. by this procedure. This is a good default which assures
  20. that this procedure's triggers and internal procedures
  21. will execute in this procedure's storage, and that proper
  22. cleanup will occur on deletion of the procedure. */
  23. CREATE WIDGET-POOL.
  24. /* *************************** Definitions ************************** */
  25. /* Parameters Definitions --- */
  26. /* Local Variable Definitions --- */
  27. DEFINE VARIABLE Bez AS CHARACTER FORMAT "x(30)" NO-UNDO.
  28. DEFINE VARIABLE GeTot AS DECIMAL FORMAT "zzz9.999-" DECIMALS 4 NO-UNDO.
  29. DEFINE VARIABLE Firma AS CHARACTER NO-UNDO.
  30. DEFINE VARIABLE AdFirma AS CHARACTER NO-UNDO.
  31. DEFINE VARIABLE iAufnr AS INTEGER NO-UNDO.
  32. DEFINE VARIABLE aAufnr AS INTEGER NO-UNDO.
  33. DEFINE VARIABLE xTotal AS CHARACTER NO-UNDO.
  34. DEFINE VARIABLE VTotal AS DECIMAL DECIMALS 4 EXTENT 15 NO-UNDO.
  35. DEFINE VARIABLE SAktiv AS LOG NO-UNDO.
  36. DEFINE VARIABLE lView AS LOG INIT FALSE NO-UNDO.
  37. DEFINE VARIABLE xRecid AS RECID NO-UNDO.
  38. DEFINE VARIABLE ARecid AS RECID NO-UNDO.
  39. DEFINE VARIABLE LHandle AS HANDLE NO-UNDO.
  40. DEFINE VARIABLE wHandle AS HANDLE NO-UNDO.
  41. DEFINE VARIABLE Menge AS DECIMAL DECIMALS 4 NO-UNDO.
  42. DEFINE VARIABLE LKY AS INTEGER NO-UNDO.
  43. DEFINE VARIABLE FBez AS LOG INIT FALSE NO-UNDO.
  44. DEFINE VARIABLE cKonto AS CHARACTER NO-UNDO.
  45. DEFINE VARIABLE iLager AS INTEGER NO-UNDO.
  46. DEFINE VARIABLE fOpen AS LOG INIT TRUE NO-UNDO.
  47. DEFINE VARIABLE Progname AS CHARACTER NO-UNDO.
  48. DEFINE VARIABLE lMut AS LOG NO-UNDO.
  49. DEFINE VARIABLE hKontainer AS HANDLE NO-UNDO.
  50. DEFINE VARIABLE hDaten AS HANDLE NO-UNDO.
  51. DEFINE VARIABLE hQuery AS HANDLE NO-UNDO.
  52. DEFINE VARIABLE FMutFlag AS LOGICAL NO-UNDO.
  53. DEFINE TEMP-TABLE tGebRueck LIKE GebRueck.
  54. DEFINE TEMP-TABLE tGebKonto LIKE GebKonto.
  55. /* _UIB-CODE-BLOCK-END */
  56. &ANALYZE-RESUME
  57. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  58. /* ******************** Preprocessor Definitions ******************** */
  59. &Scoped-define PROCEDURE-TYPE SmartFrame
  60. &Scoped-define DB-AWARE no
  61. &Scoped-define ADM-CONTAINER FRAME
  62. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  63. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  64. &Scoped-define FRAME-NAME fMain
  65. &Scoped-define BROWSE-NAME Br_AufGebKo
  66. /* Internal Tables (found by Frame, Query & Browse Queries) */
  67. &Scoped-define INTERNAL-TABLES AufGebKo
  68. /* Definitions for BROWSE Br_AufGebKo */
  69. &Scoped-define FIELDS-IN-QUERY-Br_AufGebKo AufGebKo.Menge Bez @ Bez ~
  70. GeTot @ GeTot
  71. &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_AufGebKo AufGebKo.Menge
  72. &Scoped-define ENABLED-TABLES-IN-QUERY-Br_AufGebKo AufGebKo
  73. &Scoped-define FIRST-ENABLED-TABLE-IN-QUERY-Br_AufGebKo AufGebKo
  74. &Scoped-define QUERY-STRING-Br_AufGebKo FOR EACH AufGebKo NO-LOCK INDEXED-REPOSITION
  75. &Scoped-define OPEN-QUERY-Br_AufGebKo OPEN QUERY Br_AufGebKo FOR EACH AufGebKo NO-LOCK INDEXED-REPOSITION.
  76. &Scoped-define TABLES-IN-QUERY-Br_AufGebKo AufGebKo
  77. &Scoped-define FIRST-TABLE-IN-QUERY-Br_AufGebKo AufGebKo
  78. /* Definitions for FRAME fMain */
  79. /* Standard List Definitions */
  80. &Scoped-Define ENABLED-OBJECTS Br_AufGebKo F_Kunde F_Zahbetr F_ZahSko ~
  81. CB_ZAHLART Btn_Bezahlt F_WW F_Gebinde F_Recycling F_MWST F_Total F_Skonto ~
  82. F_Netto F_Saldo F_Bezahlt F_Skonto_Bez Btn_Verbuchen RECT-39
  83. &Scoped-Define DISPLAYED-OBJECTS F_Kunde E_Adresse F_Zahbetr F_ZahSko ~
  84. CB_ZAHLART F_WW F_Gebinde F_Recycling F_MWST F_Total F_Skonto F_Netto ~
  85. F_Saldo F_Bezahlt F_Skonto_Bez
  86. /* Custom List Definitions */
  87. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  88. &Scoped-define List-6 F_Kunde E_Adresse F_Zahbetr F_ZahSko F_WW F_Gebinde ~
  89. F_Recycling F_MWST F_Total F_Skonto F_Netto F_Saldo F_Bezahlt F_Skonto_Bez
  90. /* _UIB-PREPROCESSOR-BLOCK-END */
  91. &ANALYZE-RESUME
  92. /* ************************ Function Prototypes ********************** */
  93. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getBez fFrameWin
  94. FUNCTION getBez RETURNS CHARACTER
  95. ( ipGeb_Cd AS CHARACTER ) FORWARD.
  96. /* _UIB-CODE-BLOCK-END */
  97. &ANALYZE-RESUME
  98. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getTotalBetr fFrameWin
  99. FUNCTION getTotalBetr RETURNS DECIMAL
  100. ( Betr_1 AS DECIMAL, Betr_2 AS DECIMAL, Betr_3 AS DECIMAL ) FORWARD.
  101. /* _UIB-CODE-BLOCK-END */
  102. &ANALYZE-RESUME
  103. /* *********************** Control Definitions ********************** */
  104. /* Definitions of the field level widgets */
  105. DEFINE BUTTON Btn_Ausgleich
  106. LABEL "&Ausgleichen"
  107. SIZE 14 BY 1.
  108. DEFINE BUTTON Btn_Bezahlt
  109. LABEL "&Bezahlen"
  110. SIZE 14 BY 1.
  111. DEFINE BUTTON Btn_Verbuchen
  112. LABEL "&Verbuchen"
  113. SIZE 14 BY 1.
  114. DEFINE VARIABLE CB_ZAHLART AS CHARACTER FORMAT "X(256)":U
  115. LABEL "Zahlungsart"
  116. VIEW-AS COMBO-BOX INNER-LINES 5
  117. LIST-ITEM-PAIRS "Item 1","Item 1"
  118. DROP-DOWN-LIST
  119. SIZE 36 BY 1
  120. BGCOLOR 15 NO-UNDO.
  121. DEFINE VARIABLE E_Adresse AS CHARACTER
  122. VIEW-AS EDITOR NO-WORD-WRAP SCROLLBAR-HORIZONTAL SCROLLBAR-VERTICAL
  123. SIZE 50 BY 7
  124. BGCOLOR 15 NO-UNDO.
  125. DEFINE VARIABLE F_Bezahlt AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  126. LABEL "Bezahlt"
  127. VIEW-AS FILL-IN NATIVE
  128. SIZE 18 BY 1
  129. BGCOLOR 14 NO-UNDO.
  130. DEFINE VARIABLE F_Gebinde AS DECIMAL FORMAT "zzz,zz9.999-":U INITIAL 0
  131. LABEL "Gebinde"
  132. VIEW-AS FILL-IN NATIVE
  133. SIZE 18 BY 1
  134. BGCOLOR 15 NO-UNDO.
  135. DEFINE VARIABLE F_Kunde AS CHARACTER FORMAT "X(256)":U
  136. VIEW-AS FILL-IN NATIVE
  137. SIZE 141.2 BY 1
  138. BGCOLOR 15 FONT 6 NO-UNDO.
  139. DEFINE VARIABLE F_MWST AS DECIMAL FORMAT "zzz,zz9.999-":U INITIAL 0
  140. LABEL "Mehrwertst."
  141. VIEW-AS FILL-IN NATIVE
  142. SIZE 18 BY 1
  143. BGCOLOR 15 NO-UNDO.
  144. DEFINE VARIABLE F_Netto AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  145. LABEL "Nettobetrag"
  146. VIEW-AS FILL-IN NATIVE
  147. SIZE 18 BY 1
  148. BGCOLOR 15 NO-UNDO.
  149. DEFINE VARIABLE F_Recycling AS DECIMAL FORMAT "zzz,zz9.999-":U INITIAL 0
  150. LABEL "Gebühren"
  151. VIEW-AS FILL-IN NATIVE
  152. SIZE 18 BY 1
  153. BGCOLOR 15 NO-UNDO.
  154. DEFINE VARIABLE F_Saldo AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  155. LABEL "Saldo"
  156. VIEW-AS FILL-IN NATIVE
  157. SIZE 18 BY 1
  158. BGCOLOR 14 NO-UNDO.
  159. DEFINE VARIABLE F_Skonto AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  160. LABEL "Skonto"
  161. VIEW-AS FILL-IN NATIVE
  162. SIZE 18 BY 1
  163. BGCOLOR 15 NO-UNDO.
  164. DEFINE VARIABLE F_Skonto_Bez AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  165. LABEL "Skontoabzug"
  166. VIEW-AS FILL-IN NATIVE
  167. SIZE 17 BY 1
  168. BGCOLOR 14 NO-UNDO.
  169. DEFINE VARIABLE F_Total AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  170. LABEL "Totalbetrag"
  171. VIEW-AS FILL-IN NATIVE
  172. SIZE 18 BY 1
  173. BGCOLOR 8 NO-UNDO.
  174. DEFINE VARIABLE F_WW AS DECIMAL FORMAT "zzz,zz9.999-":U INITIAL 0
  175. LABEL "Warenwert"
  176. VIEW-AS FILL-IN NATIVE
  177. SIZE 18 BY 1
  178. BGCOLOR 15 NO-UNDO.
  179. DEFINE VARIABLE F_Zahbetr AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  180. LABEL "Zahlbetrag"
  181. VIEW-AS FILL-IN NATIVE
  182. SIZE 18 BY 1
  183. BGCOLOR 15 FGCOLOR 12 NO-UNDO.
  184. DEFINE VARIABLE F_ZahSko AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0
  185. LABEL "Skonto"
  186. VIEW-AS FILL-IN NATIVE
  187. SIZE 17 BY 1
  188. BGCOLOR 15 FGCOLOR 12 NO-UNDO.
  189. DEFINE RECTANGLE RECT-39
  190. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  191. SIZE 146 BY 25.95.
  192. /* Query definitions */
  193. &ANALYZE-SUSPEND
  194. DEFINE QUERY Br_AufGebKo FOR
  195. AufGebKo SCROLLING.
  196. &ANALYZE-RESUME
  197. /* Browse definitions */
  198. DEFINE BROWSE Br_AufGebKo
  199. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_AufGebKo fFrameWin _STRUCTURED
  200. QUERY Br_AufGebKo NO-LOCK DISPLAY
  201. AufGebKo.Menge FORMAT "zz,zz9-":U
  202. Bez @ Bez COLUMN-LABEL "Bezeichnung" FORMAT "x(30)":U WIDTH 28
  203. GeTot @ GeTot COLUMN-LABEL "Betrag" FORMAT "zzz9.999-":U
  204. ENABLE
  205. AufGebKo.Menge
  206. /* _UIB-CODE-BLOCK-END */
  207. &ANALYZE-RESUME
  208. WITH NO-ROW-MARKERS SEPARATORS SIZE 56 BY 23.81
  209. BGCOLOR 15 .
  210. /* ************************ Frame Definitions *********************** */
  211. DEFINE FRAME fMain
  212. Br_AufGebKo AT ROW 3 COL 3
  213. F_Kunde AT ROW 1.52 COL 3 COLON-ALIGNED NO-LABEL WIDGET-ID 4 NO-TAB-STOP
  214. E_Adresse AT ROW 3.05 COL 80 NO-LABEL WIDGET-ID 2 NO-TAB-STOP
  215. F_Zahbetr AT ROW 19.14 COL 78 COLON-ALIGNED
  216. F_ZahSko AT ROW 19.14 COL 112 COLON-ALIGNED
  217. CB_ZAHLART AT ROW 21.52 COL 94 COLON-ALIGNED
  218. Btn_Bezahlt AT ROW 23.62 COL 114
  219. F_WW AT ROW 11.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  220. Btn_Ausgleich AT ROW 17.14 COL 114
  221. F_Gebinde AT ROW 12.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  222. F_Recycling AT ROW 13.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  223. F_MWST AT ROW 14.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  224. F_Total AT ROW 15.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  225. F_Skonto AT ROW 16.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  226. F_Netto AT ROW 17.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  227. F_Saldo AT ROW 18.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  228. F_Bezahlt AT ROW 20.14 COL 78 COLON-ALIGNED NO-TAB-STOP
  229. F_Skonto_Bez AT ROW 20.14 COL 112 COLON-ALIGNED NO-TAB-STOP
  230. Btn_Verbuchen AT ROW 24.95 COL 114 WIDGET-ID 6
  231. RECT-39 AT ROW 1.24 COL 2
  232. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  233. SIDE-LABELS NO-UNDERLINE THREE-D
  234. AT COL 1 ROW 1
  235. SIZE 148.6 BY 26.48.
  236. /* *********************** Procedure Settings ************************ */
  237. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  238. /* Settings for THIS-PROCEDURE
  239. Type: SmartFrame
  240. Allow: Basic,Browse,DB-Fields,Query,Smart
  241. Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  242. Design Page: 3
  243. Other Settings: PERSISTENT-ONLY COMPILE
  244. */
  245. /* This procedure should always be RUN PERSISTENT. Report the error, */
  246. /* then cleanup and return. */
  247. IF NOT THIS-PROCEDURE:PERSISTENT THEN
  248. DO:
  249. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  250. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  251. RETURN.
  252. END.
  253. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  254. /* ************************* Create Window ************************** */
  255. &ANALYZE-SUSPEND _CREATE-WINDOW
  256. /* DESIGN Window definition (used by the UIB)
  257. CREATE WINDOW fFrameWin ASSIGN
  258. HEIGHT = 26.48
  259. WIDTH = 148.6.
  260. /* END WINDOW DEFINITION */
  261. */
  262. &ANALYZE-RESUME
  263. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB fFrameWin
  264. /* ************************* Included-Libraries *********************** */
  265. {src/adm2/containr.i}
  266. /* _UIB-CODE-BLOCK-END */
  267. &ANALYZE-RESUME
  268. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  269. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  270. /* SETTINGS FOR WINDOW fFrameWin
  271. VISIBLE,,RUN-PERSISTENT */
  272. /* SETTINGS FOR FRAME fMain
  273. NOT-VISIBLE FRAME-NAME Custom */
  274. /* BROWSE-TAB Br_AufGebKo 1 fMain */
  275. ASSIGN
  276. FRAME fMain:HIDDEN = TRUE.
  277. ASSIGN
  278. Br_AufGebKo:COLUMN-RESIZABLE IN FRAME fMain = TRUE.
  279. /* SETTINGS FOR BUTTON Btn_Ausgleich IN FRAME fMain
  280. NO-ENABLE */
  281. /* SETTINGS FOR EDITOR E_Adresse IN FRAME fMain
  282. NO-ENABLE 6 */
  283. ASSIGN
  284. E_Adresse:RETURN-INSERTED IN FRAME fMain = TRUE
  285. E_Adresse:READ-ONLY IN FRAME fMain = TRUE.
  286. /* SETTINGS FOR FILL-IN F_Bezahlt IN FRAME fMain
  287. 6 */
  288. ASSIGN
  289. F_Bezahlt:READ-ONLY IN FRAME fMain = TRUE.
  290. /* SETTINGS FOR FILL-IN F_Gebinde IN FRAME fMain
  291. 6 */
  292. ASSIGN
  293. F_Gebinde:READ-ONLY IN FRAME fMain = TRUE.
  294. /* SETTINGS FOR FILL-IN F_Kunde IN FRAME fMain
  295. 6 */
  296. ASSIGN
  297. F_Kunde:READ-ONLY IN FRAME fMain = TRUE.
  298. /* SETTINGS FOR FILL-IN F_MWST IN FRAME fMain
  299. 6 */
  300. ASSIGN
  301. F_MWST:READ-ONLY IN FRAME fMain = TRUE.
  302. /* SETTINGS FOR FILL-IN F_Netto IN FRAME fMain
  303. 6 */
  304. ASSIGN
  305. F_Netto:READ-ONLY IN FRAME fMain = TRUE.
  306. /* SETTINGS FOR FILL-IN F_Recycling IN FRAME fMain
  307. 6 */
  308. ASSIGN
  309. F_Recycling:READ-ONLY IN FRAME fMain = TRUE.
  310. /* SETTINGS FOR FILL-IN F_Saldo IN FRAME fMain
  311. 6 */
  312. ASSIGN
  313. F_Saldo:READ-ONLY IN FRAME fMain = TRUE.
  314. /* SETTINGS FOR FILL-IN F_Skonto IN FRAME fMain
  315. 6 */
  316. ASSIGN
  317. F_Skonto:READ-ONLY IN FRAME fMain = TRUE.
  318. /* SETTINGS FOR FILL-IN F_Skonto_Bez IN FRAME fMain
  319. 6 */
  320. ASSIGN
  321. F_Skonto_Bez:READ-ONLY IN FRAME fMain = TRUE.
  322. /* SETTINGS FOR FILL-IN F_Total IN FRAME fMain
  323. 6 */
  324. ASSIGN
  325. F_Total:READ-ONLY IN FRAME fMain = TRUE.
  326. /* SETTINGS FOR FILL-IN F_WW IN FRAME fMain
  327. 6 */
  328. ASSIGN
  329. F_WW:READ-ONLY IN FRAME fMain = TRUE.
  330. /* SETTINGS FOR FILL-IN F_Zahbetr IN FRAME fMain
  331. 6 */
  332. ASSIGN
  333. F_Zahbetr:READ-ONLY IN FRAME fMain = TRUE.
  334. /* SETTINGS FOR FILL-IN F_ZahSko IN FRAME fMain
  335. 6 */
  336. ASSIGN
  337. F_ZahSko:READ-ONLY IN FRAME fMain = TRUE.
  338. /* _RUN-TIME-ATTRIBUTES-END */
  339. &ANALYZE-RESUME
  340. /* Setting information for Queries and Browse Widgets fields */
  341. &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_AufGebKo
  342. /* Query rebuild information for BROWSE Br_AufGebKo
  343. _TblList = "AnaDat.AufGebKo"
  344. _Options = "NO-LOCK INDEXED-REPOSITION"
  345. _FldNameList[1] > AnaDat.AufGebKo.Menge
  346. "AufGebKo.Menge" ? ? "decimal" ? ? ? ? ? ? yes ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  347. _FldNameList[2] > "_<CALC>"
  348. "Bez @ Bez" "Bezeichnung" "x(30)" ? ? ? ? ? ? ? no ? no no "28" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  349. _FldNameList[3] > "_<CALC>"
  350. "GeTot @ GeTot" "Betrag" "zzz9.999-" ? ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no
  351. _Query is NOT OPENED
  352. */ /* BROWSE Br_AufGebKo */
  353. &ANALYZE-RESUME
  354. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME fMain
  355. /* Query rebuild information for FRAME fMain
  356. _Options = ""
  357. _Query is NOT OPENED
  358. */ /* FRAME fMain */
  359. &ANALYZE-RESUME
  360. /* ************************ Control Triggers ************************ */
  361. &Scoped-define BROWSE-NAME Br_AufGebKo
  362. &Scoped-define SELF-NAME Br_AufGebKo
  363. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_AufGebKo fFrameWin
  364. ON CTRL-P OF Br_AufGebKo IN FRAME fMain
  365. DO:
  366. DEFINE VARIABLE lMut AS LOG NO-UNDO.
  367. lMut = DYNAMIC-FUNCTION('getMutFlag':U, Progname ) NO-ERROR.
  368. IF lMut THEN
  369. DO:
  370. APPLY 'U1'.
  371. RETURN NO-APPLY.
  372. END.
  373. RUN selectPage IN hKontainer ( 1 ).
  374. PUBLISH 'CHOOSE-DRUCKEN' ( 'GEBINDE' ).
  375. RETURN NO-APPLY.
  376. END.
  377. /* _UIB-CODE-BLOCK-END */
  378. &ANALYZE-RESUME
  379. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_AufGebKo fFrameWin
  380. ON CTRL-W OF Br_AufGebKo IN FRAME fMain
  381. DO:
  382. DEFINE VARIABLE lMut AS LOG NO-UNDO.
  383. lMut = DYNAMIC-FUNCTION('getMutFlag':U, Progname ) NO-ERROR.
  384. IF lMut THEN
  385. DO:
  386. APPLY 'U1'.
  387. RETURN NO-APPLY.
  388. END.
  389. RUN selectPage IN hKontainer ( 1 ).
  390. PUBLISH 'CHOOSE-WEITER'.
  391. RETURN NO-APPLY.
  392. END.
  393. /* _UIB-CODE-BLOCK-END */
  394. &ANALYZE-RESUME
  395. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_AufGebKo fFrameWin
  396. ON CTRL-Z OF Br_AufGebKo IN FRAME fMain
  397. DO:
  398. DEFINE VARIABLE lMut AS LOG NO-UNDO.
  399. lMut = DYNAMIC-FUNCTION('getMutFlag':U, Progname ) NO-ERROR.
  400. IF lMut THEN
  401. DO:
  402. APPLY 'U1'.
  403. RETURN NO-APPLY.
  404. END.
  405. RUN selectPage IN hKontainer ( 1 ).
  406. PUBLISH 'CHOOSE-ZURUECK'.
  407. RETURN NO-APPLY.
  408. END.
  409. /* _UIB-CODE-BLOCK-END */
  410. &ANALYZE-RESUME
  411. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_AufGebKo fFrameWin
  412. ON RETURN OF Br_AufGebKo IN FRAME fMain
  413. DO:
  414. DO WITH FRAME {&FRAME-NAME}:
  415. APPLY 'ENTRY' TO FRAME {&FRAME-NAME}.
  416. {&BROWSE-NAME}:READ-ONLY = FALSE.
  417. AufGebKo.Menge:READ-ONLY IN BROWSE {&BROWSE-NAME} = FALSE.
  418. DYNAMIC-FUNCTION('SetMutflag':U, INPUT TRUE , Progname ) NO-ERROR.
  419. APPLY 'ENTRY' TO AufGebKo.Menge IN BROWSE {&BROWSE-NAME}.
  420. END.
  421. END.
  422. /* _UIB-CODE-BLOCK-END */
  423. &ANALYZE-RESUME
  424. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_AufGebKo fFrameWin
  425. ON ROW-DISPLAY OF Br_AufGebKo IN FRAME fMain
  426. DO:
  427. DYNAMIC-FUNCTION('getBez':U IN THIS-PROCEDURE,
  428. INPUT AufGebKo.Geb_Cd
  429. ) NO-ERROR.
  430. DYNAMIC-FUNCTION('getTotalBetr':U IN THIS-PROCEDURE,
  431. INPUT AufGebKo.Betrag_1,
  432. INPUT AufGebKo.Betrag_2,
  433. INPUT AufGebKo.Betrag_3
  434. ) NO-ERROR.
  435. RUN FARBE.
  436. END.
  437. /* _UIB-CODE-BLOCK-END */
  438. &ANALYZE-RESUME
  439. &Scoped-define SELF-NAME AufGebKo.Menge
  440. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL AufGebKo.Menge Br_AufGebKo _BROWSE-COLUMN fFrameWin
  441. ON END-ERROR OF AufGebKo.Menge IN BROWSE Br_AufGebKo /* Menge */
  442. DO:
  443. APPLY 'RETURN' TO SELF.
  444. RETURN NO-APPLY.
  445. END.
  446. /* _UIB-CODE-BLOCK-END */
  447. &ANALYZE-RESUME
  448. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL AufGebKo.Menge Br_AufGebKo _BROWSE-COLUMN fFrameWin
  449. ON LEAVE OF AufGebKo.Menge IN BROWSE Br_AufGebKo /* Menge */
  450. DO:
  451. DO WITH FRAME {&FRAME-NAME}:
  452. xRecid = RECID(AufGebko).
  453. RUN MUTATION ( INPUT xRecid,
  454. INPUT DECIMAL(AufGebKo.Menge:SCREEN-VALUE IN BROWSE {&BROWSE-NAME}) ).
  455. FIND AufGebKo WHERE RECID(AufGebKo) = xRecid NO-LOCK.
  456. DYNAMIC-FUNCTION('GETTOTALBETR':U,
  457. INPUT AufGebKo.Betrag_1,
  458. INPUT AufGebKo.Betrag_2,
  459. INPUT AufGebKo.Betrag_3
  460. ) NO-ERROR.
  461. GeTot:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} = STRING(GeTot).
  462. AufGebKo.Menge:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} = STRING(AufGebKo.Menge).
  463. RUN FARBE.
  464. END.
  465. END.
  466. /* _UIB-CODE-BLOCK-END */
  467. &ANALYZE-RESUME
  468. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL AufGebKo.Menge Br_AufGebKo _BROWSE-COLUMN fFrameWin
  469. ON RETURN OF AufGebKo.Menge IN BROWSE Br_AufGebKo /* Menge */
  470. DO:
  471. DO WITH FRAME {&FRAME-NAME}:
  472. xRecid = RECID(AufGebko).
  473. RUN MUTATION ( INPUT xRecid,
  474. INPUT DECIMAL(AufGebKo.Menge:SCREEN-VALUE IN BROWSE {&BROWSE-NAME}) ).
  475. FIND AufGebKo WHERE RECID(AufGebKo) = xRecid NO-LOCK.
  476. DYNAMIC-FUNCTION('GETTOTALBETR':U,
  477. INPUT AufGebKo.Betrag_1,
  478. INPUT AufGebKo.Betrag_2,
  479. INPUT AufGebKo.Betrag_3
  480. ) NO-ERROR.
  481. GeTot:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} = STRING(GeTot).
  482. AufGebKo.Menge:SCREEN-VALUE IN BROWSE {&BROWSE-NAME} = STRING(AufGebKo.Menge).
  483. RUN FARBE.
  484. APPLY 'ENTRY' TO FRAME {&FRAME-NAME}.
  485. SELF:READ-ONLY = TRUE.
  486. {&BROWSE-NAME}:READ-ONLY = TRUE.
  487. DYNAMIC-FUNCTION('SetMutflag':U, INPUT FALSE , Progname ) NO-ERROR.
  488. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  489. RETURN NO-APPLY.
  490. END.
  491. END.
  492. /* _UIB-CODE-BLOCK-END */
  493. &ANALYZE-RESUME
  494. &Scoped-define SELF-NAME Btn_Ausgleich
  495. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Ausgleich fFrameWin
  496. ON CHOOSE OF Btn_Ausgleich IN FRAME fMain /* Ausgleichen */
  497. DO:
  498. DEFINE BUFFER bAufze FOR Aufze .
  499. DEFINE BUFFER bAufGebKo FOR AufGebKo.
  500. REPEAT TRANSACTION WITH FRAME {&FRAME-NAME}:
  501. FOR EACH bAufGebKo NO-LOCK
  502. WHERE bAufGebKo.Firma = Firma
  503. AND bAufGebKo.Aufnr = Aufnr
  504. AND bAufGebKo.Menge <> 0 :
  505. RUN MUTATION ( RECID(bAufGebKo), 0 ).
  506. END.
  507. FOR EACH bAufze NO-LOCK
  508. WHERE bAufze.Firma = Firma
  509. AND bAufze.Aufnr = Aufnr
  510. AND bAufze.Artnr > 0:
  511. FOR EACH bAufGebKo NO-LOCK
  512. WHERE bAufGebKo.Firma = bAufze.Firma
  513. AND bAufGebKo.Aufnr = bAufze.Aufnr
  514. AND bAufGebKo.Kto_Cd2 = ''
  515. AND bAufGebKo.Kto_Cd3 = '' :
  516. IF bAufGebKo.Kto_Cd1 = bAufze.KGebKto THEN
  517. DO:
  518. Menge = bAufGebKo.Menge + bAufze.KGeb_Me.
  519. RUN MUTATION ( RECID(bAufGebKo), INPUT Menge ).
  520. RELEASE bAufGebKo.
  521. NEXT.
  522. END.
  523. IF bAufGebKo.Kto_Cd1 = bAufze.VGebKto THEN
  524. DO:
  525. Menge = bAufGebKo.Menge + bAufze.VGeb_Me.
  526. RUN MUTATION ( RECID(bAufGebKo), INPUT Menge ).
  527. RELEASE bAufGebKo.
  528. NEXT.
  529. END.
  530. IF bAufGebKo.Kto_Cd1 = bAufze.GGebKto THEN
  531. DO:
  532. Menge = bAufGebKo.Menge + bAufze.GGeb_Me.
  533. RUN MUTATION ( RECID(bAufGebKo), INPUT Menge ).
  534. RELEASE bAufGebKo.
  535. NEXT.
  536. END.
  537. END.
  538. RELEASE bAufze.
  539. END.
  540. LEAVE.
  541. END.
  542. RUN OPENAUFGEBKO.
  543. BROWSE {&BROWSE-NAME}:REFRESH() NO-ERROR.
  544. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  545. RETURN NO-APPLY.
  546. END.
  547. /* _UIB-CODE-BLOCK-END */
  548. &ANALYZE-RESUME
  549. &Scoped-define SELF-NAME Btn_Bezahlt
  550. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Bezahlt fFrameWin
  551. ON CHOOSE OF Btn_Bezahlt IN FRAME fMain /* Bezahlen */
  552. DO:
  553. DEFINE VARIABLE CodeI AS INTEGER NO-UNDO.
  554. DEFINE VARIABLE Firma AS CHARACTER NO-UNDO.
  555. DEFINE VARIABLE VKonto AS CHARACTER NO-UNDO.
  556. FBez = TRUE.
  557. DO WHILE TRUE TRANSACTION WITH FRAME {&FRAME-NAME}:
  558. IF Btn_Bezahlt:LABEL = '&Bezahlen' THEN
  559. DO:
  560. F_ZahBetr = F_Netto.
  561. F_ZahSko = F_Skonto.
  562. F_ZahBetr:READ-ONLY = FALSE.
  563. F_ZahSko:READ-ONLY = FALSE.
  564. DISPLAY F_ZahBetr F_ZahSko.
  565. APPLY 'ENTRY' TO F_Zahbetr.
  566. Btn_Bezahlt:LABEL = '&Buchen'.
  567. DYNAMIC-FUNCTION('setMutFlag':U, INPUT TRUE, Progname ) NO-ERROR.
  568. RETURN NO-APPLY.
  569. END.
  570. ELSE
  571. DO WITH FRAME {&FRAME-NAME}:
  572. ASSIGN {&list-6}.
  573. VKonto = CB_ZAHLART:SCREEN-VALUE.
  574. IF VKonto = 'XXXXXX' OR
  575. VKonto = ? THEN
  576. DO:
  577. BELL.
  578. MESSAGE 'Kein Konto gewählt !' VIEW-AS ALERT-BOX ERROR.
  579. APPLY 'ENTRY' TO CB_ZAHLART.
  580. RETURN NO-APPLY.
  581. END.
  582. FIND Aufko WHERE RECID(Aufko) = ARecid.
  583. Aufko.Bar_Betr = F_Zahbetr.
  584. Aufko.Bar_Skonto = F_ZahSko.
  585. Aufko.Bar_Konto = VKonto.
  586. RUN DETAILS.
  587. RELEASE Aufko.
  588. F_ZahBetr:READ-ONLY = TRUE.
  589. F_ZahSko:READ-ONLY = TRUE.
  590. Btn_Bezahlt:LABEL = '&Bezahlen'.
  591. DYNAMIC-FUNCTION('SetMutFlag':U, INPUT FALSE, Progname ) NO-ERROR.
  592. PUBLISH('REFRESH_AUFKOPF':U).
  593. END.
  594. LEAVE.
  595. END.
  596. FIND Aufko WHERE RECID(Aufko) = ARecid NO-LOCK NO-ERROR.
  597. APPLY 'U1'.
  598. END.
  599. /* _UIB-CODE-BLOCK-END */
  600. &ANALYZE-RESUME
  601. &Scoped-define SELF-NAME Btn_Verbuchen
  602. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Verbuchen fFrameWin
  603. ON CHOOSE OF Btn_Verbuchen IN FRAME fMain /* Verbuchen */
  604. DO:
  605. PUBLISH 'VERBUCHEN'.
  606. RUN ANZEIGE_AUFKOPF.
  607. APPLY 'U1'.
  608. END.
  609. /* _UIB-CODE-BLOCK-END */
  610. &ANALYZE-RESUME
  611. &Scoped-define SELF-NAME CB_ZAHLART
  612. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_ZAHLART fFrameWin
  613. ON RETURN OF CB_ZAHLART IN FRAME fMain /* Zahlungsart */
  614. DO:
  615. APPLY 'TAB' TO SELF.
  616. RETURN NO-APPLY.
  617. END.
  618. /* _UIB-CODE-BLOCK-END */
  619. &ANALYZE-RESUME
  620. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_ZAHLART fFrameWin
  621. ON VALUE-CHANGED OF CB_ZAHLART IN FRAME fMain /* Zahlungsart */
  622. DO:
  623. DEFINE VARIABLE cKey AS CHARACTER NO-UNDO.
  624. cKey = 'Zahlkonto' + STRING(iLager,'99').
  625. PUT-KEY-VALUE SECTION 'Abholverkauf'
  626. KEY cKey
  627. VALUE SELF:SCREEN-VALUE.
  628. cKonto = SELF:SCREEN-VALUE.
  629. DYNAMIC-FUNCTION ('setFehlwert':U, Firma, 'AUFGEBZAH', 'CHAR', cKonto ) NO-ERROR.
  630. END.
  631. /* _UIB-CODE-BLOCK-END */
  632. &ANALYZE-RESUME
  633. &Scoped-define SELF-NAME F_Zahbetr
  634. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Zahbetr fFrameWin
  635. ON LEAVE OF F_Zahbetr IN FRAME fMain /* Zahlbetrag */
  636. DO:
  637. IF KEYFUNCTION(LASTKEY) = "END-ERROR" THEN RETURN.
  638. LKY = LASTKEY.
  639. LHandle = LAST-EVENT:WIDGET-ENTER.
  640. IF VALID-HANDLE(LHandle) AND
  641. LHandle:TYPE = 'BUTTON' AND
  642. LHandle:NAME = 'Btn_Bezahlt' THEN LKY = 999.
  643. IF VALID-HANDLE(LHandle) AND
  644. LHandle:NAME = 'CB_ZAHLART' THEN LKY = 999.
  645. IF FBez THEN
  646. DO:
  647. LKY = 999.
  648. FBez = FALSE.
  649. END.
  650. DO WITH FRAME {&FRAME-NAME}:
  651. ASSIGN F_Zahbetr.
  652. IF F_Zahbetr <> 0 THEN F_ZahSko = F_Total - F_Zahbetr.
  653. DISPLAY F_ZahSko.
  654. IF LKY <> 999 THEN
  655. DO:
  656. APPLY 'ENTRY' TO F_ZahSko.
  657. RETURN NO-APPLY.
  658. END.
  659. END.
  660. END.
  661. /* _UIB-CODE-BLOCK-END */
  662. &ANALYZE-RESUME
  663. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Zahbetr fFrameWin
  664. ON RETURN OF F_Zahbetr IN FRAME fMain /* Zahlbetrag */
  665. DO:
  666. APPLY 'ENTRY' TO F_ZahSko.
  667. RETURN NO-APPLY.
  668. END.
  669. /* _UIB-CODE-BLOCK-END */
  670. &ANALYZE-RESUME
  671. &Scoped-define SELF-NAME F_ZahSko
  672. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_ZahSko fFrameWin
  673. ON LEAVE OF F_ZahSko IN FRAME fMain /* Skonto */
  674. DO:
  675. IF KEYFUNCTION(LASTKEY) = "END-ERROR" THEN RETURN.
  676. IF KEYFUNCTION(LASTKEY) = "BACK-TAB" THEN RETURN.
  677. LKY = LASTKEY.
  678. LHandle = LAST-EVENT:WIDGET-ENTER.
  679. IF VALID-HANDLE(LHandle) AND
  680. LHandle:NAME = 'F_ZahBetr' THEN RETURN.
  681. IF VALID-HANDLE(LHandle) AND
  682. LHandle:NAME = 'CB_ZAHLART' THEN RETURN.
  683. IF VALID-HANDLE(LHandle) AND
  684. LHandle:TYPE = 'BUTTON' AND
  685. LHandle:NAME = 'Btn_Bezahlt' THEN LKY = 999.
  686. IF FBez THEN
  687. DO:
  688. LKY = 999.
  689. FBez = FALSE.
  690. END.
  691. DO WITH FRAME {&FRAME-NAME}:
  692. ASSIGN F_ZahSko.
  693. IF LKY <> 999 THEN
  694. DO:
  695. APPLY 'ENTRY' TO F_ZahSko.
  696. RETURN NO-APPLY.
  697. END.
  698. END.
  699. END.
  700. /* _UIB-CODE-BLOCK-END */
  701. &ANALYZE-RESUME
  702. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_ZahSko fFrameWin
  703. ON RETURN OF F_ZahSko IN FRAME fMain /* Skonto */
  704. DO:
  705. APPLY 'TAB' TO SELF.
  706. RETURN NO-APPLY.
  707. END.
  708. /* _UIB-CODE-BLOCK-END */
  709. &ANALYZE-RESUME
  710. &UNDEFINE SELF-NAME
  711. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK fFrameWin
  712. /* *************************** Main Block *************************** */
  713. SAktiv = DYNAMIC-FUNCTION('getSuperAktiv':U) NO-ERROR.
  714. Firma = DYNAMIC-FUNCTION('getMandant':U) NO-ERROR.
  715. lView = FALSE.
  716. SUBSCRIBE TO 'ANZEIGE_AUFKOPF' ANYWHERE.
  717. SUBSCRIBE TO 'NAVIGATION' ANYWHERE.
  718. ON 'END-ERROR':U OF FRAME {&FRAME-NAME} ANYWHERE
  719. DO:
  720. DO WITH FRAME {&FRAME-NAME}:
  721. IF Btn_Bezahlt:LABEL = '&Buchen' THEN
  722. DO:
  723. Btn_Bezahlt:LABEL = '&Bezahlen'.
  724. RUN DETAILS.
  725. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  726. F_ZahBetr:READ-ONLY = TRUE.
  727. F_ZahSko :READ-ONLY = TRUE.
  728. DYNAMIC-FUNCTION('SetMutFlag':U, INPUT FALSE, Progname ) NO-ERROR.
  729. RETURN NO-APPLY.
  730. END.
  731. END.
  732. RUN ENDE IN hKontainer.
  733. RETURN NO-APPLY.
  734. END.
  735. ON 'END-ERROR':U OF BROWSE {&BROWSE-NAME}
  736. DO:
  737. DO WITH FRAME {&FRAME-NAME}:
  738. IF Btn_Bezahlt:LABEL = '&Buchen' THEN
  739. DO:
  740. Btn_Bezahlt:LABEL = '&Bezahlen'.
  741. RUN DETAILS.
  742. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  743. F_ZahBetr:READ-ONLY = TRUE.
  744. F_ZahSko :READ-ONLY = TRUE.
  745. DYNAMIC-FUNCTION('SetMutFlag':U, INPUT FALSE, Progname ) NO-ERROR.
  746. RETURN NO-APPLY.
  747. END.
  748. END.
  749. RUN ENDE IN hKontainer.
  750. RETURN NO-APPLY.
  751. END.
  752. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  753. /* Now enable the interface if in test mode - otherwise this happens when
  754. the object is explicitly initialized from its container. */
  755. RUN initializeObject.
  756. &ENDIF
  757. /* _UIB-CODE-BLOCK-END */
  758. &ANALYZE-RESUME
  759. /* ********************** Internal Procedures *********************** */
  760. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects fFrameWin _ADM-CREATE-OBJECTS
  761. PROCEDURE adm-create-objects :
  762. /*------------------------------------------------------------------------------
  763. Purpose: Create handles for all SmartObjects used in this procedure.
  764. After SmartObjects are initialized, then SmartLinks are added.
  765. Parameters: <none>
  766. ------------------------------------------------------------------------------*/
  767. END PROCEDURE.
  768. /* _UIB-CODE-BLOCK-END */
  769. &ANALYZE-RESUME
  770. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ANZEIGE_AUFKOPF fFrameWin
  771. PROCEDURE ANZEIGE_AUFKOPF :
  772. /*------------------------------------------------------------------------------
  773. Purpose:
  774. Parameters: <none>
  775. Notes:
  776. ------------------------------------------------------------------------------*/
  777. RUN DETAILS.
  778. END PROCEDURE.
  779. /* _UIB-CODE-BLOCK-END */
  780. &ANALYZE-RESUME
  781. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DETAILS fFrameWin
  782. PROCEDURE DETAILS :
  783. /*------------------------------------------------------------------------------
  784. Purpose:
  785. Parameters: <none>
  786. Notes:
  787. ------------------------------------------------------------------------------*/
  788. DEFINE VARIABLE ix AS INTEGER NO-UNDO.
  789. DEFINE VARIABLE VKonto AS CHARACTER NO-UNDO.
  790. DEFINE BUFFER bAufko FOR Aufko .
  791. DEFINE BUFFER bAufGebKo FOR AufGebKo.
  792. DEFINE BUFFER bGebKonto FOR GebKonto.
  793. DEFINE BUFFER bAdresse FOR Adresse .
  794. DEFINE BUFFER bSteuer FOR Steuer .
  795. IF NOT VALID-HANDLE ( hDaten ) THEN
  796. DO:
  797. IF VALID-HANDLE ( hKontainer) THEN RUN selectPage IN hKontainer ( 1 ).
  798. RETURN.
  799. END.
  800. FIND bSteuer NO-LOCK
  801. WHERE bSteuer.Firma = Firma.
  802. AdFirma = bSteuer.AdFirma.
  803. ASSIGN
  804. E_Adresse = ''
  805. F_Bezahlt = 0.00
  806. F_Kunde = ''
  807. F_MWST = 0.00
  808. F_Netto = 0.00
  809. F_Recycling = 0.00
  810. F_Saldo = 0.00
  811. F_Skonto = 0.00
  812. F_Total = 0.00
  813. F_WW = 0.00
  814. F_Zahbetr = 0.00
  815. F_ZahSko = 0.00
  816. F_Gebinde = 0.00
  817. iAufnr = 0.
  818. ARecid = DYNAMIC-FUNCTION('getCurrentRecid':U IN hDaten ).
  819. IF ARecid = ? THEN
  820. DO WITH FRAME {&FRAME-NAME}:
  821. RUN OPENAUFGEBKO IN THIS-PROCEDURE.
  822. DISPLAY {&List-6}.
  823. RETURN.
  824. END.
  825. FIND bAufko NO-LOCK WHERE RECID(bAufko) = ARecid.
  826. iAufnr = bAufko.Aufnr.
  827. aAufnr = bAufko.Aufnr.
  828. iLager = bAufko.Lager.
  829. DO WHILE TRUE:
  830. FIND FIRST bAufGebKo NO-LOCK
  831. WHERE bAufGebKo.Firma = Firma
  832. AND bAufGebKo.Aufnr = iAufnr NO-ERROR.
  833. IF AVAILABLE bAufGebKo THEN LEAVE.
  834. REPEAT TRANSACTION:
  835. FOR EACH tGebRueck:
  836. CREATE bAufGebKo.
  837. BUFFER-COPY tGebRueck TO bAufGebKo.
  838. ASSIGN
  839. bAufGebKo.Firma = Firma
  840. bAufGebKo.Aufnr = iAufnr.
  841. IF bAufGebKo.Kto_Cd1 <> '' THEN
  842. DO:
  843. FIND bGebKonto NO-LOCK
  844. WHERE bGebKonto.Firma = bAufGebKo.Firma
  845. AND bGebKonto.Geb_Cd = bAufGebKo.Kto_Cd1.
  846. ASSIGN
  847. bAufGebKo.Wert_1 = bGebKonto.Depot + bGebKonto.Gebuehr.
  848. RELEASE bGebKonto.
  849. END.
  850. IF bAufGebKo.Kto_Cd2 <> '' THEN
  851. DO:
  852. FIND bGebKonto NO-LOCK
  853. WHERE bGebKonto.Firma = bAufGebKo.Firma
  854. AND bGebKonto.Geb_Cd = bAufGebKo.Kto_Cd2.
  855. ASSIGN
  856. bAufGebKo.Wert_2 = bGebKonto.Depot + bGebKonto.Gebuehr.
  857. RELEASE bGebKonto.
  858. END.
  859. IF bAufGebKo.Kto_Cd3 <> '' THEN
  860. DO:
  861. FIND bGebKonto NO-LOCK
  862. WHERE bGebKonto.Firma = bAufGebKo.Firma
  863. AND bGebKonto.Geb_Cd = bAufGebKo.Kto_Cd3.
  864. ASSIGN
  865. bAufGebKo.Wert_3 = bGebKonto.Depot + bGebKonto.Gebuehr.
  866. RELEASE bGebKonto.
  867. END.
  868. END.
  869. RELEASE bAufGebKo.
  870. LEAVE.
  871. END.
  872. LEAVE.
  873. END.
  874. RELEASE bAufGebKo.
  875. RUN OPENAUFGEBKO IN THIS-PROCEDURE.
  876. DO WITH FRAME {&FRAME-NAME}:
  877. VTotal = 0.
  878. IF SAktiv THEN
  879. DO:
  880. DYNAMIC-FUNCTION('calculateAuftragsTotal':U, Firma, iAufnr, OUTPUT VTotal ) NO-ERROR.
  881. END.
  882. FIND bAufko NO-LOCK WHERE RECID(bAufko) = ARecid.
  883. F_WW = VTotal[01].
  884. F_Gebinde = VTotal[11].
  885. F_Recycling = VTotal[12].
  886. F_MWST = VTotal[09].
  887. F_Total = VTotal[10].
  888. F_Skonto = 0.
  889. F_ZahBetr = 0.
  890. F_ZahSko = 0.
  891. VKonto = ''.
  892. IF VKonto = '' THEN VKonto = cKonto.
  893. IF AVAILABLE bAufko THEN
  894. DO:
  895. F_Bezahlt = bAufko.Bar_Betr.
  896. F_Skonto_Bez = bAufko.Bar_Skonto.
  897. VKonto = bAufko.Bar_Konto.
  898. FIND bAdresse NO-LOCK
  899. WHERE bAdresse.Firma = AdFirma
  900. AND bAdresse.Knr = bAufko.Knr.
  901. DO ix = 11 TO 5 BY -1:
  902. E_Adresse = bADresse.Anschrift[ix]
  903. + (IF E_Adresse = '' THEN '' ELSE CHR(10))
  904. + E_Adresse.
  905. END.
  906. F_Kunde = STRING(bAdresse.Knr,'999999') + ' / ' + bAdresse.Anzeig_Br.
  907. END.
  908. ELSE
  909. DO:
  910. E_Adresse = ''.
  911. F_Kunde = ''.
  912. F_Bezahlt = 0.
  913. F_Skonto_Bez = 0.
  914. END.
  915. E_Adresse = CHR(10)
  916. + SUBSTITUTE('Knr.: &1 / iAufnr.: &2', bAufko.Knr, bAufko.Aufnr)
  917. + E_Adresse.
  918. CB_Zahlart:SCREEN-VALUE = VKonto NO-ERROR.
  919. F_Netto = F_Total - F_Skonto.
  920. F_Saldo = F_Total - F_Bezahlt - F_Skonto.
  921. RELEASE bAdresse.
  922. RELEASE bAufko.
  923. DISPLAY {&List-6}.
  924. END.
  925. END PROCEDURE.
  926. /* _UIB-CODE-BLOCK-END */
  927. &ANALYZE-RESUME
  928. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI fFrameWin _DEFAULT-DISABLE
  929. PROCEDURE disable_UI :
  930. /*------------------------------------------------------------------------------
  931. Purpose: DISABLE the User Interface
  932. Parameters: <none>
  933. Notes: Here we clean-up the user-interface by deleting
  934. dynamic widgets we have created and/or hide
  935. frames. This procedure is usually called when
  936. we are ready to "clean-up" after running.
  937. ------------------------------------------------------------------------------*/
  938. /* Hide all frames. */
  939. HIDE FRAME fMain.
  940. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  941. END PROCEDURE.
  942. /* _UIB-CODE-BLOCK-END */
  943. &ANALYZE-RESUME
  944. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject fFrameWin
  945. PROCEDURE enableObject :
  946. /*------------------------------------------------------------------------------
  947. Purpose: Super Override
  948. Parameters:
  949. Notes:
  950. ------------------------------------------------------------------------------*/
  951. DEFINE VARIABLE cString AS CHARACTER NO-UNDO.
  952. DEFINE VARIABLE cKey AS CHARACTER NO-UNDO.
  953. DEFINE VARIABLE hBrowse AS HANDLE NO-UNDO.
  954. RUN SUPER.
  955. DO WITH FRAME {&FRAME-NAME}:
  956. AufGebKo.Menge:READ-ONLY IN BROWSE {&BROWSE-NAME} = TRUE.
  957. {&BROWSE-NAME}:READ-ONLY = TRUE.
  958. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  959. END.
  960. IF sAktiv THEN
  961. DO:
  962. hDaten = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR.
  963. hKontainer = DYNAMIC-FUNCTION('getContainerSource':U ) NO-ERROR.
  964. Progname = DYNAMIC-FUNCTION('getProgname':U IN hKontainer) NO-ERROR.
  965. RUN COMBO_ZAHLUNGSART ( CB_Zahlart:HANDLE ) NO-ERROR.
  966. hQuery = {&BROWSE-NAME}:QUERY.
  967. cKonto = DYNAMIC-FUNCTION ('getFehlwert':U, Firma, 'AUFGEBZAH') NO-ERROR.
  968. END.
  969. DO WITH FRAME {&FRAME-NAME}:
  970. IF cKonto = ? OR
  971. cKonto = '' THEN
  972. DO:
  973. cKey = 'Zahlkonto' + STRING(iLager,'99').
  974. GET-KEY-VALUE SECTION 'Abholverkauf'
  975. KEY cKey
  976. VALUE cString.
  977. IF cString = ? THEN cString = ''.
  978. IF cString = '' THEN
  979. DO:
  980. cKey = 'Zahlkonto'.
  981. GET-KEY-VALUE SECTION 'Abholverkauf'
  982. KEY cKey
  983. VALUE cString.
  984. END.
  985. IF cString = '' THEN cString = ENTRY(2, CB_Zahlart:LIST-ITEM-PAIRS, ';').
  986. cKonto = cString.
  987. END.
  988. CB_Zahlart:SCREEN-VALUE = cKonto NO-ERROR.
  989. END.
  990. EMPTY TEMP-TABLE tGebRueck.
  991. FOR EACH GebRueck WHERE GebRueck.Firma = Firma NO-LOCK:
  992. CREATE tGebRueck.
  993. BUFFER-COPY GebRueck TO tGebRueck.
  994. END.
  995. EMPTY TEMP-TABLE tGebKonto.
  996. FOR EACH GebKonto WHERE GebKonto.Firma = Firma NO-LOCK:
  997. CREATE tGebKonto.
  998. BUFFER-COPY GebKonto TO tGebKonto.
  999. END.
  1000. END PROCEDURE.
  1001. /* _UIB-CODE-BLOCK-END */
  1002. &ANALYZE-RESUME
  1003. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI fFrameWin _DEFAULT-ENABLE
  1004. PROCEDURE enable_UI :
  1005. /*------------------------------------------------------------------------------
  1006. Purpose: ENABLE the User Interface
  1007. Parameters: <none>
  1008. Notes: Here we display/view/enable the widgets in the
  1009. user-interface. In addition, OPEN all queries
  1010. associated with each FRAME and BROWSE.
  1011. These statements here are based on the "Other
  1012. Settings" section of the widget Property Sheets.
  1013. ------------------------------------------------------------------------------*/
  1014. DISPLAY F_Kunde E_Adresse F_Zahbetr F_ZahSko CB_ZAHLART F_WW F_Gebinde
  1015. F_Recycling F_MWST F_Total F_Skonto F_Netto F_Saldo F_Bezahlt
  1016. F_Skonto_Bez
  1017. WITH FRAME fMain.
  1018. ENABLE Br_AufGebKo F_Kunde F_Zahbetr F_ZahSko CB_ZAHLART Btn_Bezahlt F_WW
  1019. F_Gebinde F_Recycling F_MWST F_Total F_Skonto F_Netto F_Saldo
  1020. F_Bezahlt F_Skonto_Bez Btn_Verbuchen RECT-39
  1021. WITH FRAME fMain.
  1022. {&OPEN-BROWSERS-IN-QUERY-fMain}
  1023. END PROCEDURE.
  1024. /* _UIB-CODE-BLOCK-END */
  1025. &ANALYZE-RESUME
  1026. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FARBE fFrameWin
  1027. PROCEDURE FARBE :
  1028. /*------------------------------------------------------------------------------
  1029. Purpose:
  1030. Parameters: <none>
  1031. Notes:
  1032. ------------------------------------------------------------------------------*/
  1033. DO WITH FRAME {&FRAME-NAME}:
  1034. IF AufGebKo.Menge <> 0 THEN
  1035. DO:
  1036. AufGebKo.Menge:BGCOLOR IN BROWSE {&BROWSE-NAME} = 8.
  1037. Bez:BGCOLOR IN BROWSE {&BROWSE-NAME} = 8.
  1038. GeTot:BGCOLOR IN BROWSE {&BROWSE-NAME} = 8.
  1039. END.
  1040. ELSE
  1041. DO:
  1042. AufGebKo.Menge:BGCOLOR IN BROWSE {&BROWSE-NAME} = 15.
  1043. Bez:BGCOLOR IN BROWSE {&BROWSE-NAME} = 15.
  1044. GeTot:BGCOLOR IN BROWSE {&BROWSE-NAME} = 15.
  1045. END.
  1046. END.
  1047. END PROCEDURE.
  1048. /* _UIB-CODE-BLOCK-END */
  1049. &ANALYZE-RESUME
  1050. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE hideObject fFrameWin
  1051. PROCEDURE hideObject :
  1052. /*------------------------------------------------------------------------------
  1053. Purpose: Super Override
  1054. Parameters:
  1055. Notes:
  1056. ------------------------------------------------------------------------------*/
  1057. RUN SUPER.
  1058. lView = FALSE.
  1059. END PROCEDURE.
  1060. /* _UIB-CODE-BLOCK-END */
  1061. &ANALYZE-RESUME
  1062. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject fFrameWin
  1063. PROCEDURE initializeObject :
  1064. /*------------------------------------------------------------------------------
  1065. Purpose: Super Override
  1066. Parameters:
  1067. Notes:
  1068. ------------------------------------------------------------------------------*/
  1069. /* Code placed here will execute PRIOR to standard behavior. */
  1070. RUN SUPER.
  1071. /* Code placed here will execute AFTER standard behavior. */
  1072. END PROCEDURE.
  1073. /* _UIB-CODE-BLOCK-END */
  1074. &ANALYZE-RESUME
  1075. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE MUTATION fFrameWin
  1076. PROCEDURE MUTATION :
  1077. /*------------------------------------------------------------------------------
  1078. Purpose:
  1079. Parameters: <none>
  1080. Notes:
  1081. ------------------------------------------------------------------------------*/
  1082. DEFINE INPUT PARAMETER ipRecid AS RECID NO-UNDO.
  1083. DEFINE INPUT PARAMETER ipMenge AS DECIMAL DECIMALS 4 NO-UNDO.
  1084. DEFINE BUFFER bAufGebKo FOR AufGebKo.
  1085. DEFINE BUFFER bAufGKon FOR AufGKon .
  1086. DEFINE VARIABLE DiffMenge AS INTEGER NO-UNDO.
  1087. DEFINE VARIABLE MW AS INTEGER NO-UNDO.
  1088. REPEAT TRANSACTION WITH FRAME {&FRAME-NAME}:
  1089. FIND bAufGebKo WHERE RECID(bAufGebKo) = ipRecid.
  1090. DiffMenge = ipMenge - bAufGebKo.Menge.
  1091. IF DiffMenge = 0 THEN
  1092. DO:
  1093. RELEASE bAufGebKo.
  1094. LEAVE.
  1095. END.
  1096. bAufGebKo.Menge = ipMenge.
  1097. DO WHILE bAufGebKo.Kto_Cd1 <> '':
  1098. IF bAufGebKo.Anz_1 = 0 THEN LEAVE.
  1099. FIND tGebKonto NO-LOCK
  1100. WHERE tGebKonto.Firma = bAufGebKo.Firma
  1101. AND tGebKonto.Geb_Cd = bAufGebKo.Kto_Cd1.
  1102. IF tGebKonto.MWST_Art = 0 THEN MW = 11.
  1103. IF tGebKonto.MWST_Art = 2 THEN MW = tGebKonto.MWST_Cd.
  1104. IF tGebKonto.MWST_Art = 1 THEN
  1105. DO:
  1106. FIND FIRST bAufGKon NO-LOCK
  1107. WHERE bAufGKon.Firma = bAufGebKo.Firma
  1108. AND bAufGKon.Aufnr = bAufGebKo.Aufnr
  1109. AND bAufGKon.Geb_Cd = tGebKonto.Geb_Cd NO-ERROR.
  1110. IF AVAILABLE bAufGKon THEN MW = bAufGKon.MWSt_Cd.
  1111. ELSE MW = 11.
  1112. END.
  1113. FIND bAufGKon
  1114. WHERE bAufGKon.Firma = bAufGebKo.Firma
  1115. AND bAufGKon.Aufnr = bAufGebKo.Aufnr
  1116. AND bAufGKon.Geb_Cd = tGebKonto.Geb_Cd
  1117. AND bAufGKon.MWSt_Cd = MW NO-ERROR.
  1118. IF NOT AVAILABLE bAufGKon THEN
  1119. DO:
  1120. CREATE bAufGKon.
  1121. ASSIGN
  1122. bAufGKon.Firma = bAufGebKo.Firma
  1123. bAufGKon.Aufnr = bAufGebKo.Aufnr
  1124. bAufGKon.Geb_Cd = tGebKonto.Geb_Cd
  1125. bAufGKon.MWSt_Cd = MW
  1126. bAufGKon.Gebuehr = tGebKonto.Gebuehr
  1127. bAufGKon.Depot = tGebKonto.Depot
  1128. bAufGKon.Sort_Cd = tGebKonto.Sort_Cd.
  1129. END.
  1130. bAufGKon.Eingang = bAufGKon.Eingang + (bAufGebKo.Anz_1 * DiffMenge).
  1131. bAufGKon.Betrag = (bAufGKon.Ausgang - bAufGKon.Eingang)
  1132. * (bAufGKon.Depot + bAufGKon.Gebuehr).
  1133. RELEASE bAufGKon.
  1134. RELEASE tGebKonto.
  1135. LEAVE.
  1136. END.
  1137. DO WHILE bAufGebKo.Kto_Cd2 <> '':
  1138. IF bAufGebKo.Anz_2 = 0 THEN LEAVE.
  1139. FIND tGebKonto NO-LOCK
  1140. WHERE tGebKonto.Firma = bAufGebKo.Firma
  1141. AND tGebKonto.Geb_Cd = bAufGebKo.Kto_Cd2.
  1142. IF tGebKonto.MWST_Art = 0 THEN MW = 11.
  1143. IF tGebKonto.MWST_Art = 2 THEN MW = tGebKonto.MWST_Cd.
  1144. IF tGebKonto.MWST_Art = 1 THEN
  1145. DO:
  1146. FIND FIRST bAufGKon NO-LOCK
  1147. WHERE bAufGKon.Firma = bAufGebKo.Firma
  1148. AND bAufGKon.Aufnr = bAufGebKo.Aufnr
  1149. AND bAufGKon.Geb_Cd = tGebKonto.Geb_Cd NO-ERROR.
  1150. IF AVAILABLE bAufGKon THEN MW = bAufGKon.MWSt_Cd.
  1151. ELSE MW = 11.
  1152. END.
  1153. FIND bAufGKon
  1154. WHERE bAufGKon.Firma = bAufGebKo.Firma
  1155. AND bAufGKon.Aufnr = bAufGebKo.Aufnr
  1156. AND bAufGKon.Geb_Cd = tGebKonto.Geb_Cd
  1157. AND bAufGKon.MWSt_Cd = MW NO-ERROR.
  1158. IF NOT AVAILABLE bAufGKon THEN
  1159. DO:
  1160. CREATE bAufGKon.
  1161. ASSIGN
  1162. bAufGKon.Firma = bAufGebKo.Firma
  1163. bAufGKon.Aufnr = bAufGebKo.Aufnr
  1164. bAufGKon.Geb_Cd = tGebKonto.Geb_Cd
  1165. bAufGKon.MWSt_Cd = MW
  1166. bAufGKon.Gebuehr = tGebKonto.Gebuehr
  1167. bAufGKon.Depot = tGebKonto.Depot
  1168. bAufGKon.Sort_Cd = tGebKonto.Sort_Cd.
  1169. END.
  1170. bAufGKon.Eingang = bAufGKon.Eingang + (bAufGebKo.Anz_2 * DiffMenge).
  1171. bAufGKon.Betrag = (bAufGKon.Ausgang - bAufGKon.Eingang)
  1172. * (bAufGKon.Depot + bAufGKon.Gebuehr).
  1173. RELEASE bAufGKon.
  1174. RELEASE tGebKonto.
  1175. LEAVE.
  1176. END.
  1177. DO WHILE bAufGebKo.Kto_Cd3 <> '':
  1178. IF bAufGebKo.Anz_3 = 0 THEN LEAVE.
  1179. FIND tGebKonto NO-LOCK
  1180. WHERE tGebKonto.Firma = bAufGebKo.Firma
  1181. AND tGebKonto.Geb_Cd = bAufGebKo.Kto_Cd3.
  1182. IF tGebKonto.MWST_Art = 0 THEN MW = 11.
  1183. IF tGebKonto.MWST_Art = 2 THEN MW = tGebKonto.MWST_Cd.
  1184. IF tGebKonto.MWST_Art = 1 THEN
  1185. DO:
  1186. FIND FIRST bAufGKon NO-LOCK
  1187. WHERE bAufGKon.Firma = bAufGebKo.Firma
  1188. AND bAufGKon.Aufnr = bAufGebKo.Aufnr
  1189. AND bAufGKon.Geb_Cd = tGebKonto.Geb_Cd NO-ERROR.
  1190. IF AVAILABLE bAufGKon THEN MW = bAufGKon.MWSt_Cd.
  1191. ELSE MW = 11.
  1192. END.
  1193. FIND bAufGKon
  1194. WHERE bAufGKon.Firma = bAufGebKo.Firma
  1195. AND bAufGKon.Aufnr = bAufGebKo.Aufnr
  1196. AND bAufGKon.Geb_Cd = tGebKonto.Geb_Cd
  1197. AND bAufGKon.MWSt_Cd = MW NO-ERROR.
  1198. IF NOT AVAILABLE bAufGKon THEN
  1199. DO:
  1200. CREATE bAufGKon.
  1201. ASSIGN
  1202. bAufGKon.Firma = bAufGebKo.Firma
  1203. bAufGKon.Aufnr = bAufGebKo.Aufnr
  1204. bAufGKon.Geb_Cd = tGebKonto.Geb_Cd
  1205. bAufGKon.MWSt_Cd = MW
  1206. bAufGKon.Gebuehr = tGebKonto.Gebuehr
  1207. bAufGKon.Depot = tGebKonto.Depot
  1208. bAufGKon.Sort_Cd = tGebKonto.Sort_Cd.
  1209. END.
  1210. bAufGKon.Eingang = bAufGKon.Eingang + (bAufGebKo.Anz_3 * DiffMenge).
  1211. bAufGKon.Betrag = (bAufGKon.Ausgang - bAufGKon.Eingang)
  1212. * (bAufGKon.Depot + bAufGKon.Gebuehr).
  1213. RELEASE bAufGKon.
  1214. RELEASE tGebKonto.
  1215. LEAVE.
  1216. END.
  1217. ASSIGN
  1218. bAufGebKo.Betrag_1 = bAufGebKo.Anz_1 * bAufGebKo.Wert_1 * bAufGebKo.Menge
  1219. bAufGebKo.Betrag_2 = bAufGebKo.Anz_2 * bAufGebKo.Wert_2 * bAufGebKo.Menge
  1220. bAufGebKo.Betrag_3 = bAufGebKo.Anz_3 * bAufGebKo.Wert_3 * bAufGebKo.Menge.
  1221. RELEASE bAufGebKo.
  1222. RELEASE bAufGKon .
  1223. fOpen = FALSE.
  1224. RUN DETAILS.
  1225. fOpen = FALSE.
  1226. PUBLISH 'refreshAufko'.
  1227. LEAVE.
  1228. END.
  1229. END PROCEDURE.
  1230. /* _UIB-CODE-BLOCK-END */
  1231. &ANALYZE-RESUME
  1232. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NAVIGATION fFrameWin
  1233. PROCEDURE NAVIGATION :
  1234. /*------------------------------------------------------------------------------
  1235. Purpose:
  1236. Notes:
  1237. ------------------------------------------------------------------------------*/
  1238. DEFINE INPUT PARAMETER ipcAction AS CHARACTER NO-UNDO.
  1239. RUN ANZEIGE_AUFKOPF.
  1240. END PROCEDURE.
  1241. /* _UIB-CODE-BLOCK-END */
  1242. &ANALYZE-RESUME
  1243. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE OPENAUFGEBKO fFrameWin
  1244. PROCEDURE OPENAUFGEBKO :
  1245. /*------------------------------------------------------------------------------
  1246. Purpose:
  1247. Parameters: <none>
  1248. Notes:
  1249. ------------------------------------------------------------------------------*/
  1250. DEFINE VARIABLE cWhere AS CHARACTER NO-UNDO.
  1251. IF NOT fOpen THEN
  1252. DO:
  1253. fOpen = TRUE.
  1254. RETURN.
  1255. END.
  1256. cWhere = 'FOR EACH AufGebKo NO-LOCK '
  1257. + 'WHERE AufGebKo.Firma = "&1" '
  1258. + 'AND AufGebKo.Aufnr = &2 BY AufGebKo.Sort_Cd '.
  1259. cWhere = SUBSTITUTE(cWhere, Firma, iAufnr).
  1260. hQuery:QUERY-PREPARE(cWhere).
  1261. hQuery:QUERY-OPEN().
  1262. END PROCEDURE.
  1263. /* _UIB-CODE-BLOCK-END */
  1264. &ANALYZE-RESUME
  1265. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE viewObject fFrameWin
  1266. PROCEDURE viewObject :
  1267. /*------------------------------------------------------------------------------
  1268. Purpose: Super Override
  1269. Parameters:
  1270. Notes:
  1271. ------------------------------------------------------------------------------*/
  1272. lView = TRUE.
  1273. fOPen = TRUE.
  1274. RUN SUPER.
  1275. RUN DETAILS.
  1276. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}.
  1277. END PROCEDURE.
  1278. /* _UIB-CODE-BLOCK-END */
  1279. &ANALYZE-RESUME
  1280. /* ************************ Function Implementations ***************** */
  1281. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getBez fFrameWin
  1282. FUNCTION getBez RETURNS CHARACTER
  1283. ( ipGeb_Cd AS CHARACTER ) :
  1284. /*------------------------------------------------------------------------------
  1285. Purpose:
  1286. Notes:
  1287. ------------------------------------------------------------------------------*/
  1288. FIND GebRueck USE-INDEX GebRueck-k1
  1289. WHERE GebRueck.Firma = Firma
  1290. AND GebRueck.Geb_Cd = ipGeb_Cd NO-LOCK NO-ERROR.
  1291. IF AVAILABLE GebRueck THEN Bez = GebRueck.Bez.
  1292. ELSE Bez = "??????????".
  1293. RETURN Bez.
  1294. END FUNCTION.
  1295. /* _UIB-CODE-BLOCK-END */
  1296. &ANALYZE-RESUME
  1297. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getTotalBetr fFrameWin
  1298. FUNCTION getTotalBetr RETURNS DECIMAL
  1299. ( Betr_1 AS DECIMAL, Betr_2 AS DECIMAL, Betr_3 AS DECIMAL ) :
  1300. /*------------------------------------------------------------------------------
  1301. Purpose:
  1302. Notes:
  1303. ------------------------------------------------------------------------------*/
  1304. GeTot = Betr_1 + Betr_2 + Betr_3.
  1305. RETURN GeTot.
  1306. END FUNCTION.
  1307. /* _UIB-CODE-BLOCK-END */
  1308. &ANALYZE-RESUME