g-sesam-debi-online.w 33 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v9r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  4. &Scoped-define FRAME-NAME gSESAM
  5. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gSESAM
  6. /*------------------------------------------------------------------------
  7. File:
  8. Description: from cntnrdlg.w - ADM2 SmartDialog Template
  9. Input Parameters:
  10. <none>
  11. Output Parameters:
  12. <none>
  13. Author:
  14. Created:
  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. DEF VAR MaxPage AS INT NO-UNDO.
  28. DEF VAR fSuperAkt AS LOG NO-UNDO.
  29. DEF VAR AktSeite AS INT NO-UNDO.
  30. DEF VAR FMutFlag AS LOG NO-UNDO.
  31. DEF VAR cMandant AS CHAR NO-UNDO.
  32. DEF VAR cValue AS CHAR NO-UNDO.
  33. DEF VAR ja AS LOG NO-UNDO.
  34. DEF VAR Firma AS CHAR NO-UNDO.
  35. DEF VAR AdFirma AS CHAR NO-UNDO.
  36. DEF VAR cBuchtext AS CHAR NO-UNDO.
  37. DEF VAR iRetCode AS INT NO-UNDO.
  38. DEF VAR hdSesam AS COM-HANDLE NO-UNDO.
  39. DEF VAR hdBeleg AS COM-HANDLE NO-UNDO.
  40. DEF VAR hdKonto AS COM-HANDLE NO-UNDO.
  41. DEF VAR cString AS CHAR NO-UNDO.
  42. DEF VAR cKonto AS CHAR NO-UNDO.
  43. DEF TEMP-TABLE AInterf LIKE Interf.
  44. DEF TEMP-TABLE TInterf LIKE Interf.
  45. DEF TEMP-TABLE SInterf LIKE Interf
  46. INDEX SInterf-k1 AS PRIMARY
  47. Kto1
  48. Kto2.
  49. /* _UIB-CODE-BLOCK-END */
  50. &ANALYZE-RESUME
  51. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  52. /* ******************** Preprocessor Definitions ******************** */
  53. &Scoped-define PROCEDURE-TYPE SmartDialog
  54. &Scoped-define DB-AWARE no
  55. &Scoped-define ADM-CONTAINER DIALOG-BOX
  56. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  57. /* Name of first Frame and/or Browse and/or first Query */
  58. &Scoped-define FRAME-NAME gSESAM
  59. /* Standard List Definitions */
  60. &Scoped-Define ENABLED-OBJECTS F_Status F_Mandant CB_Buchart F_VonDatum ~
  61. F_BisDatum T_Sammelbuchung F_Buchdatum F_Buchungstext T_Abschluss Btn_OK ~
  62. Btn_Cancel RECT-4
  63. &Scoped-Define DISPLAYED-OBJECTS F_Status F_Mandant CB_Buchart F_VonDatum ~
  64. F_BisDatum T_Sammelbuchung F_Buchdatum F_Buchungstext T_Abschluss
  65. /* Custom List Definitions */
  66. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  67. &Scoped-define List-6 F_Mandant F_VonDatum F_BisDatum T_Sammelbuchung ~
  68. F_Buchdatum F_Buchungstext T_Abschluss
  69. /* _UIB-PREPROCESSOR-BLOCK-END */
  70. &ANALYZE-RESUME
  71. /* *********************** Control Definitions ********************** */
  72. /* Define a dialog box */
  73. /* Definitions of the field level widgets */
  74. DEFINE BUTTON Btn_Cancel AUTO-END-KEY
  75. LABEL "abbrechen"
  76. SIZE 14 BY 1.
  77. DEFINE BUTTON Btn_OK AUTO-GO
  78. LABEL "starten"
  79. SIZE 14 BY 1.
  80. DEFINE VARIABLE CB_Buchart AS CHARACTER FORMAT "X(256)":U INITIAL "000001"
  81. LABEL "Buchungsart"
  82. VIEW-AS COMBO-BOX INNER-LINES 5
  83. LIST-ITEM-PAIRS "Rechnungen","000001",
  84. "Zahlungen","000002"
  85. DROP-DOWN-LIST
  86. SIZE 35 BY 1 NO-UNDO.
  87. DEFINE VARIABLE F_BisDatum AS DATE FORMAT "99.99.9999":U
  88. LABEL "-"
  89. VIEW-AS FILL-IN NATIVE
  90. SIZE 16 BY 1
  91. BGCOLOR 15 NO-UNDO.
  92. DEFINE VARIABLE F_Buchdatum AS DATE FORMAT "99.99.9999":U
  93. LABEL "Buchungsdatum"
  94. VIEW-AS FILL-IN NATIVE
  95. SIZE 16 BY 1
  96. BGCOLOR 15 NO-UNDO.
  97. DEFINE VARIABLE F_Buchungstext AS CHARACTER FORMAT "x(30)":U
  98. LABEL "Buchungstext"
  99. VIEW-AS FILL-IN NATIVE
  100. SIZE 56 BY 1
  101. BGCOLOR 15 NO-UNDO.
  102. DEFINE VARIABLE F_Mandant AS CHARACTER FORMAT "X(256)":U
  103. LABEL "SESAM-Mandant"
  104. VIEW-AS FILL-IN NATIVE
  105. SIZE 56 BY 1
  106. BGCOLOR 15 NO-UNDO.
  107. DEFINE VARIABLE F_Status AS CHARACTER FORMAT "X(256)":U
  108. VIEW-AS FILL-IN NATIVE
  109. SIZE 86 BY 1
  110. BGCOLOR 14 FONT 6 NO-UNDO.
  111. DEFINE VARIABLE F_VonDatum AS DATE FORMAT "99.99.9999":U INITIAL 01/01/001
  112. LABEL "von - bis Rechnungsdatum"
  113. VIEW-AS FILL-IN NATIVE
  114. SIZE 16 BY 1
  115. BGCOLOR 15 NO-UNDO.
  116. DEFINE RECTANGLE RECT-4
  117. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  118. SIZE 90 BY 9.05.
  119. DEFINE VARIABLE T_Abschluss AS LOGICAL INITIAL no
  120. LABEL "Abschliessen"
  121. VIEW-AS TOGGLE-BOX
  122. SIZE 20 BY 1 NO-UNDO.
  123. DEFINE VARIABLE T_Sammelbuchung AS LOGICAL INITIAL no
  124. LABEL "Sammelbuchung ?"
  125. VIEW-AS TOGGLE-BOX
  126. SIZE 20 BY 1 NO-UNDO.
  127. /* ************************ Frame Definitions *********************** */
  128. DEFINE FRAME gSESAM
  129. F_Status AT ROW 9 COL 2 COLON-ALIGNED NO-LABEL NO-TAB-STOP
  130. F_Mandant AT ROW 1.52 COL 28 COLON-ALIGNED
  131. CB_Buchart AT ROW 2.52 COL 28 COLON-ALIGNED
  132. F_VonDatum AT ROW 3.52 COL 28 COLON-ALIGNED
  133. F_BisDatum AT ROW 3.52 COL 47 COLON-ALIGNED
  134. T_Sammelbuchung AT ROW 4.52 COL 30
  135. F_Buchdatum AT ROW 4.52 COL 68 COLON-ALIGNED
  136. F_Buchungstext AT ROW 5.52 COL 28 COLON-ALIGNED
  137. T_Abschluss AT ROW 6.52 COL 30
  138. Btn_OK AT ROW 7.71 COL 30
  139. Btn_Cancel AT ROW 7.71 COL 54.2
  140. RECT-4 AT ROW 1.24 COL 2
  141. SPACE(0.99) SKIP(0.22)
  142. WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
  143. SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
  144. TITLE "Fibubuchungen in SESAM"
  145. CANCEL-BUTTON Btn_Cancel.
  146. /* *********************** Procedure Settings ************************ */
  147. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  148. /* Settings for THIS-PROCEDURE
  149. Type: SmartDialog
  150. Allow: Basic,Browse,DB-Fields,Query,Smart
  151. Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  152. Design Page: 1
  153. Other Settings: COMPILE
  154. */
  155. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  156. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gSESAM
  157. /* ************************* Included-Libraries *********************** */
  158. {src/adm2/containr.i}
  159. /* _UIB-CODE-BLOCK-END */
  160. &ANALYZE-RESUME
  161. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  162. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  163. /* SETTINGS FOR DIALOG-BOX gSESAM
  164. Custom */
  165. ASSIGN
  166. FRAME gSESAM:SCROLLABLE = FALSE
  167. FRAME gSESAM:HIDDEN = TRUE.
  168. /* SETTINGS FOR FILL-IN F_BisDatum IN FRAME gSESAM
  169. 6 */
  170. /* SETTINGS FOR FILL-IN F_Buchdatum IN FRAME gSESAM
  171. 6 */
  172. /* SETTINGS FOR FILL-IN F_Buchungstext IN FRAME gSESAM
  173. 6 */
  174. /* SETTINGS FOR FILL-IN F_Mandant IN FRAME gSESAM
  175. 6 */
  176. ASSIGN
  177. F_Status:READ-ONLY IN FRAME gSESAM = TRUE.
  178. /* SETTINGS FOR FILL-IN F_VonDatum IN FRAME gSESAM
  179. 6 */
  180. /* SETTINGS FOR TOGGLE-BOX T_Abschluss IN FRAME gSESAM
  181. 6 */
  182. /* SETTINGS FOR TOGGLE-BOX T_Sammelbuchung IN FRAME gSESAM
  183. 6 */
  184. /* _RUN-TIME-ATTRIBUTES-END */
  185. &ANALYZE-RESUME
  186. /* Setting information for Queries and Browse Widgets fields */
  187. &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gSESAM
  188. /* Query rebuild information for DIALOG-BOX gSESAM
  189. _Options = "SHARE-LOCK"
  190. _Query is NOT OPENED
  191. */ /* DIALOG-BOX gSESAM */
  192. &ANALYZE-RESUME
  193. /* ************************ Control Triggers ************************ */
  194. &Scoped-define SELF-NAME gSESAM
  195. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gSESAM gSESAM
  196. ON END-ERROR OF FRAME gSESAM /* Fibubuchungen in SESAM */
  197. DO:
  198. RUN ENDE.
  199. RETURN NO-APPLY.
  200. END.
  201. /* _UIB-CODE-BLOCK-END */
  202. &ANALYZE-RESUME
  203. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gSESAM gSESAM
  204. ON GO OF FRAME gSESAM /* Fibubuchungen in SESAM */
  205. DO:
  206. /*
  207. RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ) NO-ERROR.
  208. */
  209. END.
  210. /* _UIB-CODE-BLOCK-END */
  211. &ANALYZE-RESUME
  212. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gSESAM gSESAM
  213. ON WINDOW-CLOSE OF FRAME gSESAM /* Fibubuchungen in SESAM */
  214. DO:
  215. RUN ENDE.
  216. RETURN NO-APPLY.
  217. END.
  218. /* _UIB-CODE-BLOCK-END */
  219. &ANALYZE-RESUME
  220. &Scoped-define SELF-NAME Btn_Cancel
  221. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Cancel gSESAM
  222. ON CHOOSE OF Btn_Cancel IN FRAME gSESAM /* abbrechen */
  223. DO:
  224. RUN ENDE.
  225. RETURN NO-APPLY.
  226. END.
  227. /* _UIB-CODE-BLOCK-END */
  228. &ANALYZE-RESUME
  229. &Scoped-define SELF-NAME Btn_OK
  230. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_OK gSESAM
  231. ON CHOOSE OF Btn_OK IN FRAME gSESAM /* starten */
  232. DO:
  233. DO WITH FRAME {&FRAME-NAME}:
  234. Btn_OK :SENSITIVE = FALSE.
  235. Btn_Cancel :SENSITIVE = FALSE.
  236. SESSION:SET-WAIT-STATE('GENERAL').
  237. END.
  238. RUN VERARBEITUNG.
  239. DO WITH FRAME {&FRAME-NAME}:
  240. Btn_OK :SENSITIVE = TRUE.
  241. Btn_Cancel :SENSITIVE = TRUE.
  242. SESSION:SET-WAIT-STATE('').
  243. END.
  244. IF VALID-HANDLE(hdSesam) THEN RELEASE OBJECT hdSesam.
  245. IF VALID-HANDLE(hdBeleg) THEN RELEASE OBJECT hdBeleg.
  246. IF VALID-HANDLE(hdKonto) THEN RELEASE OBJECT hdKonto.
  247. IF RETURN-VALUE <> '' THEN RETURN NO-APPLY.
  248. RUN ENDE.
  249. RETURN NO-APPLY.
  250. END.
  251. /* _UIB-CODE-BLOCK-END */
  252. &ANALYZE-RESUME
  253. &Scoped-define SELF-NAME CB_Buchart
  254. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Buchart gSESAM
  255. ON RETURN OF CB_Buchart IN FRAME gSESAM /* Buchungsart */
  256. DO:
  257. APPLY 'TAB' TO SELF.
  258. RETURN NO-APPLY.
  259. END.
  260. /* _UIB-CODE-BLOCK-END */
  261. &ANALYZE-RESUME
  262. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Buchart gSESAM
  263. ON VALUE-CHANGED OF CB_Buchart IN FRAME gSESAM /* Buchungsart */
  264. DO:
  265. DEF VAR cKey AS CHAR NO-UNDO.
  266. DO WITH FRAME {&FRAME-NAME}:
  267. cKey = 'BuchungsText' + CB_Buchart:SCREEN-VALUE.
  268. GET-KEY-VALUE SECTION 'Sesam'
  269. KEY cKey
  270. VALUE cValue.
  271. IF cValue <> ? THEN cBuchtext = cValue.
  272. ELSE cBuchtext = ''.
  273. IF T_Sammelbuchung:SCREEN-VALUE BEGINS 'n' THEN F_Buchungstext:SCREEN-VALUE = ''.
  274. ELSE F_Buchungstext:SCREEN-VALUE = cBuchtext.
  275. END.
  276. END.
  277. /* _UIB-CODE-BLOCK-END */
  278. &ANALYZE-RESUME
  279. &Scoped-define SELF-NAME F_Buchdatum
  280. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Buchdatum gSESAM
  281. ON ENTRY OF F_Buchdatum IN FRAME gSESAM /* Buchungsdatum */
  282. DO:
  283. DO WITH FRAME {&FRAME-NAME}:
  284. ASSIGN {&List-6}.
  285. IF NOT T_Sammelbuchung THEN DO:
  286. APPLY 'TAB' TO SELF.
  287. RETURN NO-APPLY.
  288. END.
  289. END.
  290. END.
  291. /* _UIB-CODE-BLOCK-END */
  292. &ANALYZE-RESUME
  293. &Scoped-define SELF-NAME T_Abschluss
  294. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Abschluss gSESAM
  295. ON RETURN OF T_Abschluss IN FRAME gSESAM /* Abschliessen */
  296. DO:
  297. APPLY 'TAB' TO SELF.
  298. RETURN NO-APPLY.
  299. END.
  300. /* _UIB-CODE-BLOCK-END */
  301. &ANALYZE-RESUME
  302. &Scoped-define SELF-NAME T_Sammelbuchung
  303. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Sammelbuchung gSESAM
  304. ON RETURN OF T_Sammelbuchung IN FRAME gSESAM /* Sammelbuchung ? */
  305. DO:
  306. APPLY 'TAB' TO SELF.
  307. RETURN NO-APPLY.
  308. END.
  309. /* _UIB-CODE-BLOCK-END */
  310. &ANALYZE-RESUME
  311. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Sammelbuchung gSESAM
  312. ON VALUE-CHANGED OF T_Sammelbuchung IN FRAME gSESAM /* Sammelbuchung ? */
  313. DO:
  314. DEF VAR cText AS CHAR NO-UNDO.
  315. DO WITH FRAME {&FRAME-NAME}:
  316. ASSIGN {&list-6}.
  317. IF T_Sammelbuchung THEN ASSIGN F_Buchdatum = F_BisDatum
  318. F_Buchungstext = cBuchtext.
  319. ELSE ASSIGN F_Buchdatum = ?
  320. F_Buchungstext = ''.
  321. DISPLAY {&List-6}.
  322. END.
  323. END.
  324. /* _UIB-CODE-BLOCK-END */
  325. &ANALYZE-RESUME
  326. &UNDEFINE SELF-NAME
  327. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gSESAM
  328. /* *************************** Main Block *************************** */
  329. MaxPage = 1.
  330. AktSeite = 1.
  331. fSuperAkt = DYNAMIC-FUNCTION('getSuperAktiv':U) NO-ERROR.
  332. SESSION:DATA-ENTRY-RETURN = TRUE.
  333. SESSION:IMMEDIATE-DISPLAY = TRUE.
  334. SUBSCRIBE TO 'TOOLBAR' ANYWHERE.
  335. IF fSuperAkt THEN DO:
  336. Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR.
  337. AdFirma = DYNAMIC-FUNCTION('GETADMANDANT':U) NO-ERROR.
  338. END.
  339. /* TRIGGERS ------------------------------------------------------ */
  340. ON 'END-ERROR':U OF FRAME {&FRAME-NAME} ANYWHERE
  341. DO:
  342. RUN ENDE.
  343. RETURN NO-APPLY.
  344. END.
  345. /* ------------------------------------------------------------------ */
  346. {src/adm2/dialogmn.i}
  347. /* _UIB-CODE-BLOCK-END */
  348. &ANALYZE-RESUME
  349. /* ********************** Internal Procedures *********************** */
  350. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gSESAM _ADM-CREATE-OBJECTS
  351. PROCEDURE adm-create-objects :
  352. /*------------------------------------------------------------------------------
  353. Purpose: Create handles for all SmartObjects used in this procedure.
  354. After SmartObjects are initialized, then SmartLinks are added.
  355. Parameters: <none>
  356. ------------------------------------------------------------------------------*/
  357. END PROCEDURE.
  358. /* _UIB-CODE-BLOCK-END */
  359. &ANALYZE-RESUME
  360. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE changePage gSESAM
  361. PROCEDURE changePage :
  362. /*------------------------------------------------------------------------------
  363. Purpose: Super Override
  364. Parameters:
  365. Notes:
  366. ------------------------------------------------------------------------------*/
  367. /* Code placed here will execute PRIOR to standard behavior. */
  368. RUN SUPER.
  369. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
  370. CASE AktSeite:
  371. WHEN 1 THEN DO:
  372. /* RUN addLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
  373. /* RUN addLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
  374. /* RUN ToolbarInit ( INPUT h_d-auftr ). */
  375. RUN ENTRY_CURSOR.
  376. END.
  377. WHEN 2 THEN DO:
  378. RUN ENTRY_CURSOR.
  379. END.
  380. END CASE.
  381. END PROCEDURE.
  382. /* _UIB-CODE-BLOCK-END */
  383. &ANALYZE-RESUME
  384. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gSESAM _DEFAULT-DISABLE
  385. PROCEDURE disable_UI :
  386. /*------------------------------------------------------------------------------
  387. Purpose: DISABLE the User Interface
  388. Parameters: <none>
  389. Notes: Here we clean-up the user-interface by deleting
  390. dynamic widgets we have created and/or hide
  391. frames. This procedure is usually called when
  392. we are ready to "clean-up" after running.
  393. ------------------------------------------------------------------------------*/
  394. /* Hide all frames. */
  395. HIDE FRAME gSESAM.
  396. END PROCEDURE.
  397. /* _UIB-CODE-BLOCK-END */
  398. &ANALYZE-RESUME
  399. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gSESAM
  400. PROCEDURE enableObject :
  401. /*------------------------------------------------------------------------------
  402. Purpose: Super Override
  403. Parameters:
  404. Notes:
  405. ------------------------------------------------------------------------------*/
  406. DEF VAR cKey AS CHAR NO-UNDO.
  407. /* Code placed here will execute PRIOR to standard behavior. */
  408. RUN SUPER.
  409. IF fSuperAkt THEN RUN FENSTER_TITEL ( INPUT FRAME {&FRAME-NAME}:HANDLE ) NO-ERROR.
  410. DO WHILE TRUE WITH FRAME {&FRAME-NAME}:
  411. GET-KEY-VALUE SECTION 'Sesam'
  412. KEY 'Mandant'
  413. VALUE cMandant.
  414. IF cMandant <> ? THEN DO:
  415. F_Mandant:SCREEN-VALUE = cMandant.
  416. END.
  417. GET-KEY-VALUE SECTION 'Sesam'
  418. KEY 'Buchungsart'
  419. VALUE cValue.
  420. IF cValue <> ? THEN DO:
  421. CB_Buchart:SCREEN-VALUE = cValue.
  422. cKey = 'BuchungsText' + cValue.
  423. GET-KEY-VALUE SECTION 'Sesam'
  424. KEY cKey
  425. VALUE cValue.
  426. IF cValue <> ? THEN cBuchtext = cValue.
  427. ELSE cBuchtext = ''.
  428. END.
  429. GET-KEY-VALUE SECTION 'Sesam'
  430. KEY 'VonDatum'
  431. VALUE cValue.
  432. IF cValue <> ? THEN DO:
  433. F_VonDatum:SCREEN-VALUE = cValue.
  434. END.
  435. GET-KEY-VALUE SECTION 'Sesam'
  436. KEY 'BisDatum'
  437. VALUE cValue.
  438. IF cValue <> ? THEN DO:
  439. F_BisDatum:SCREEN-VALUE = cValue.
  440. END.
  441. GET-KEY-VALUE SECTION 'Sesam'
  442. KEY 'Sammelbuchung'
  443. VALUE cValue.
  444. IF cValue <> ? THEN DO:
  445. T_Sammelbuchung:SCREEN-VALUE = cValue.
  446. END.
  447. GET-KEY-VALUE SECTION 'Sesam'
  448. KEY 'BuchDatum'
  449. VALUE cValue.
  450. IF cValue <> ? THEN DO:
  451. F_BuchDatum:SCREEN-VALUE = cValue.
  452. END.
  453. GET-KEY-VALUE SECTION 'Sesam'
  454. KEY 'Abschluss'
  455. VALUE cValue.
  456. IF cValue <> ? THEN DO:
  457. T_Abschluss:SCREEN-VALUE = cValue.
  458. END.
  459. IF T_Sammelbuchung:SCREEN-VALUE BEGINS 'n' THEN F_Buchungstext:SCREEN-VALUE = ''.
  460. ELSE F_Buchungstext:SCREEN-VALUE = cBuchtext.
  461. LEAVE.
  462. END.
  463. END PROCEDURE.
  464. /* _UIB-CODE-BLOCK-END */
  465. &ANALYZE-RESUME
  466. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gSESAM _DEFAULT-ENABLE
  467. PROCEDURE enable_UI :
  468. /*------------------------------------------------------------------------------
  469. Purpose: ENABLE the User Interface
  470. Parameters: <none>
  471. Notes: Here we display/view/enable the widgets in the
  472. user-interface. In addition, OPEN all queries
  473. associated with each FRAME and BROWSE.
  474. These statements here are based on the "Other
  475. Settings" section of the widget Property Sheets.
  476. ------------------------------------------------------------------------------*/
  477. DISPLAY F_Status F_Mandant CB_Buchart F_VonDatum F_BisDatum T_Sammelbuchung
  478. F_Buchdatum F_Buchungstext T_Abschluss
  479. WITH FRAME gSESAM.
  480. ENABLE F_Status F_Mandant CB_Buchart F_VonDatum F_BisDatum T_Sammelbuchung
  481. F_Buchdatum F_Buchungstext T_Abschluss Btn_OK Btn_Cancel RECT-4
  482. WITH FRAME gSESAM.
  483. VIEW FRAME gSESAM.
  484. {&OPEN-BROWSERS-IN-QUERY-gSESAM}
  485. END PROCEDURE.
  486. /* _UIB-CODE-BLOCK-END */
  487. &ANALYZE-RESUME
  488. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gSESAM
  489. PROCEDURE ENDE :
  490. /*------------------------------------------------------------------------------
  491. Purpose:
  492. Parameters: <none>
  493. Notes:
  494. ------------------------------------------------------------------------------*/
  495. SESSION:IMMEDIATE-DISPLAY = FALSE.
  496. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
  497. IF AktSeite > 1 THEN DO:
  498. RUN selectPage ( INPUT 1 ).
  499. RETURN NO-APPLY.
  500. END.
  501. IF fSuperAkt THEN RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ).
  502. APPLY 'GO' TO FRAME {&FRAME-NAME}.
  503. RETURN NO-APPLY.
  504. END PROCEDURE.
  505. /* _UIB-CODE-BLOCK-END */
  506. &ANALYZE-RESUME
  507. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_CURSOR gSESAM
  508. PROCEDURE ENTRY_CURSOR :
  509. /*------------------------------------------------------------------------------
  510. Purpose:
  511. Parameters: <none>
  512. Notes:
  513. ------------------------------------------------------------------------------*/
  514. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
  515. CASE AktSeite:
  516. /* WHEN 1 THEN RUN applyEntry IN h_v-adresse ( INPUT ? ). */
  517. /* WHEN 2 THEN RUN applyEntry IN h_f-adrkomm ( INPUT ? ). */
  518. /* WHEN 3 THEN RUN applyEntry IN h_b-auftbb ( INPUT ? ). */
  519. /* WHEN 4 THEN RUN applyEntry IN h_b-aufdet ( INPUT ? ). */
  520. /* WHEN 5 THEN RUN applyEntry IN h_b-aufstreu ( INPUT ? ). */
  521. /* WHEN 6 THEN RUN applyEntry IN h_b-auffak ( INPUT ? ). */
  522. /* WHEN 7 THEN RUN applyEntry IN h_b-position ( INPUT ? ). */
  523. END CASE.
  524. RETURN NO-APPLY.
  525. END PROCEDURE.
  526. /* _UIB-CODE-BLOCK-END */
  527. &ANALYZE-RESUME
  528. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE exitObject gSESAM
  529. PROCEDURE exitObject :
  530. /*------------------------------------------------------------------------------
  531. Purpose: Super Override
  532. Parameters:
  533. Notes:
  534. ------------------------------------------------------------------------------*/
  535. RUN ENDE.
  536. RETURN NO-APPLY.
  537. END PROCEDURE.
  538. /* _UIB-CODE-BLOCK-END */
  539. &ANALYZE-RESUME
  540. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NEXTPAGE gSESAM
  541. PROCEDURE NEXTPAGE :
  542. /*------------------------------------------------------------------------------
  543. Purpose:
  544. Parameters: <none>
  545. Notes:
  546. ------------------------------------------------------------------------------*/
  547. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
  548. IF AktSeite = MaxPage THEN AktSeite = 1.
  549. ELSE AktSeite = AktSeite + 1.
  550. RUN selectPage ( INPUT AktSeite ).
  551. END PROCEDURE.
  552. /* _UIB-CODE-BLOCK-END */
  553. &ANALYZE-RESUME
  554. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE PREVPAGE gSESAM
  555. PROCEDURE PREVPAGE :
  556. /*------------------------------------------------------------------------------
  557. Purpose:
  558. Parameters: <none>
  559. Notes:
  560. ------------------------------------------------------------------------------*/
  561. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
  562. IF AktSeite = 1 THEN AktSeite = MaxPage.
  563. ELSE AktSeite = AktSeite - 1.
  564. RUN selectPage ( INPUT AktSeite ).
  565. END PROCEDURE.
  566. /* _UIB-CODE-BLOCK-END */
  567. &ANALYZE-RESUME
  568. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE selectPage gSESAM
  569. PROCEDURE selectPage :
  570. /*------------------------------------------------------------------------------
  571. Purpose: Super Override
  572. Parameters:
  573. Notes:
  574. ------------------------------------------------------------------------------*/
  575. DEF INPUT PARAMETER piPageNum AS INT NO-UNDO.
  576. DEF VAR FMutFlag AS LOG NO-UNDO.
  577. DEF VAR MutProg AS CHAR NO-UNDO.
  578. FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
  579. DO WHILE TRUE:
  580. IF NOT FMutFlag THEN LEAVE.
  581. MutProg = DYNAMIC-FUNCTION('GETMUTPROG':U).
  582. IF MutProg <> THIS-PROCEDURE:FILE-NAME THEN LEAVE.
  583. RETURN NO-APPLY.
  584. END.
  585. CASE piPageNum:
  586. END CASE.
  587. AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
  588. CASE AktSeite:
  589. WHEN 1 THEN DO:
  590. /* RUN removeLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
  591. /* RUN removeLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
  592. END.
  593. END CASE.
  594. RUN SUPER( INPUT piPageNum).
  595. END PROCEDURE.
  596. /* _UIB-CODE-BLOCK-END */
  597. &ANALYZE-RESUME
  598. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TOOLBAR gSESAM
  599. PROCEDURE TOOLBAR :
  600. /*------------------------------------------------------------------------------
  601. Purpose:
  602. Parameters: <none>
  603. Notes:
  604. ------------------------------------------------------------------------------*/
  605. DEF INPUT PARAMETER pcAction AS CHAR NO-UNDO.
  606. /*
  607. RUN TOOLBAR IN h_dyntoolbar ( INPUT pcAction ).
  608. */
  609. END PROCEDURE.
  610. /* _UIB-CODE-BLOCK-END */
  611. &ANALYZE-RESUME
  612. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE VERARBEITUNG gSESAM
  613. PROCEDURE VERARBEITUNG :
  614. /*------------------------------------------------------------------------------
  615. Purpose:
  616. Parameters: <none>
  617. Notes:
  618. ------------------------------------------------------------------------------*/
  619. DEF VAR fBuchen AS LOG NO-UNDO.
  620. DEF VAR cKey AS CHAR NO-UNDO.
  621. DEF VAR iTrnr AS INT NO-UNDO.
  622. DO WITH FRAME {&FRAME-NAME}:
  623. ASSIGN {&List-6}.
  624. IF CB_Buchart:SCREEN-VALUE = ? OR
  625. CB_Buchart:SCREEN-VALUE = '' THEN DO:
  626. APPLY 'ENTRY' TO CB_Buchart.
  627. RETURN 'ERROR'.
  628. END.
  629. IF F_VonDatum = ? THEN DO:
  630. APPLY 'ENTRY' TO F_VonDatum.
  631. RETURN 'ERROR'.
  632. END.
  633. IF F_BisDatum = ? THEN DO:
  634. APPLY 'ENTRY' TO F_BisDatum.
  635. RETURN 'ERROR'.
  636. END.
  637. IF F_BisDatum < F_VonDatum THEN F_BisDatum = F_VonDatum.
  638. IF NOT T_Sammelbuchung THEN ASSIGN F_Buchdatum = ?
  639. F_Buchungstext = ''.
  640. ELSE DO:
  641. IF F_Buchdatum = ? THEN DO:
  642. APPLY 'ENTRY' TO F_BuchDatum.
  643. RETURN 'ERROR'.
  644. END.
  645. IF F_Buchungstext = '' THEN DO:
  646. APPLY 'ENTRY' TO F_Buchungstext.
  647. RETURN 'ERROR'.
  648. END.
  649. END.
  650. DISPLAY {&List-6}.
  651. cKey = 'BuchungsText' + CB_Buchart:SCREEN-VALUE.
  652. PUT-KEY-VALUE SECTION 'Sesam'
  653. KEY 'Mandant'
  654. VALUE F_Mandant :SCREEN-VALUE.
  655. PUT-KEY-VALUE SECTION 'Sesam'
  656. KEY 'Buchungsart'
  657. VALUE CB_Buchart :SCREEN-VALUE.
  658. PUT-KEY-VALUE SECTION 'Sesam'
  659. KEY 'VonDatum'
  660. VALUE F_VonDatum :SCREEN-VALUE.
  661. PUT-KEY-VALUE SECTION 'Sesam'
  662. KEY 'BisDatum'
  663. VALUE F_BisDatum :SCREEN-VALUE.
  664. PUT-KEY-VALUE SECTION 'Sesam'
  665. KEY 'Sammelbuchung'
  666. VALUE T_Sammelbuchung:SCREEN-VALUE.
  667. PUT-KEY-VALUE SECTION 'Sesam'
  668. KEY 'BuchDatum'
  669. VALUE F_BuchDatum :SCREEN-VALUE.
  670. PUT-KEY-VALUE SECTION 'Sesam'
  671. KEY 'Abschluss'
  672. VALUE T_Abschluss :SCREEN-VALUE.
  673. IF T_Sammelbuchung THEN DO:
  674. PUT-KEY-VALUE SECTION 'Sesam'
  675. KEY cKey
  676. VALUE F_Buchungstext:SCREEN-VALUE.
  677. END.
  678. DO WHILE TRUE:
  679. CREATE "FibuNT.Mandant" hdSesam CONNECT NO-ERROR.
  680. IF VALID-HANDLE(hdSesam) THEN LEAVE.
  681. CREATE "FibuNT.Mandant" hdSesam NO-ERROR.
  682. LEAVE.
  683. END.
  684. IF NOT VALID-HANDLE(hdSesam) THEN DO:
  685. MESSAGE 'SESAM ist auf diesem Arbeitsplatz nicht' SKIP
  686. 'oder nicht richtig installiert ! '
  687. VIEW-AS ALERT-BOX ERROR.
  688. RETURN 'ERROR'.
  689. END.
  690. cMandant = F_Mandant.
  691. F_Status:SCREEN-VALUE = 'Login mit ' + cMandant + ' ... '.
  692. iRetCode = hdSesam:Login( 1, cMandant ).
  693. IF iRetCode <> 0 THEN DO:
  694. MESSAGE 'Login nicht erfolgreich ! ' VIEW-AS ALERT-BOX ERROR.
  695. RETURN 'ERROR'.
  696. END.
  697. cMandant = hdSesam:LetzterMandant.
  698. PUT-KEY-VALUE SECTION 'Sesam'
  699. KEY 'Mandant'
  700. VALUE cMandant.
  701. F_Status:SCREEN-VALUE = 'Login mit ' + cMandant + ' ... OK!'.
  702. hdKonto = hdSesam:NeuKonto().
  703. IF NOT VALID-HANDLE(hdKonto) THEN DO:
  704. MESSAGE 'Es kann kin KontoObject erstellt werden ! '
  705. VIEW-AS ALERT-BOX ERROR.
  706. RETURN 'ERROR'.
  707. END.
  708. hdBeleg = hdSesam:NeuBeleg().
  709. IF NOT VALID-HANDLE(hdBeleg) THEN DO:
  710. MESSAGE 'Es können keine Belege eingefügt werden ! '
  711. VIEW-AS ALERT-BOX ERROR.
  712. RETURN 'ERROR'.
  713. END.
  714. fBuchen = TRUE.
  715. FOR EACH TInterf:
  716. DELETE TInterf.
  717. END.
  718. FOR EACH AInterf:
  719. DELETE AInterf.
  720. END.
  721. FOR EACH SInterf:
  722. DELETE SInterf.
  723. END.
  724. FOR EACH Interf USE-INDEX Interf-k1
  725. WHERE Interf.Firma = Firma
  726. AND Interf.Verbucht = FALSE
  727. AND Interf.Datum >= F_VonDatum
  728. AND Interf.Datum <= F_BisDatum NO-LOCK:
  729. CASE CB_Buchart:SCREEN-VALUE:
  730. WHEN '000001' THEN DO:
  731. IF Interf.Herk < 50 THEN NEXT.
  732. IF Interf.Herk > 59 THEN NEXT.
  733. END.
  734. WHEN '000002' THEN DO:
  735. IF Interf.Herk < 60 THEN NEXT.
  736. IF Interf.Herk > 69 THEN NEXT.
  737. END.
  738. OTHERWISE NEXT.
  739. END CASE.
  740. CREATE TInterf.
  741. BUFFER-COPY Interf TO TInterf.
  742. IF TInterf.Kto1 = '' THEN TInterf.Kto1 = '2200'.
  743. IF TInterf.Kto1 = '1050' THEN TInterf.Kto1 = '1100'.
  744. IF TInterf.Kto1 = '6000' THEN TInterf.Kto1 = '3200'.
  745. IF TInterf.Kto1 = '6600' THEN TInterf.Kto1 = '3290'.
  746. IF TInterf.Kto1 = '9999' THEN TInterf.Kto1 = '1999'.
  747. IF TInterf.Kto1 = '9400' THEN TInterf.Kto1 = '1000'.
  748. IF TInterf.Kto1 = '9300' THEN TInterf.Kto1 = '1010'.
  749. IF TInterf.Kto1 = '9200' THEN TInterf.Kto1 = '1020'.
  750. IF TInterf.Kto1 = '9100' THEN TInterf.Kto1 = '1021'.
  751. IF TInterf.Kto1 = '9600' THEN TInterf.Kto1 = '1026'.
  752. IF TInterf.Kto1 = '9500' THEN TInterf.Kto1 = '1030'.
  753. IF TInterf.Kto1 = '9998' THEN TInterf.Kto1 = '3295'.
  754. IF TInterf.Kto2 = '' THEN TInterf.Kto2 = '2200'.
  755. IF TInterf.Kto2 = '1050' THEN TInterf.Kto2 = '1100'.
  756. IF TInterf.Kto2 = '6000' THEN TInterf.Kto2 = '3200'.
  757. IF TInterf.Kto2 = '6600' THEN TInterf.Kto2 = '3290'.
  758. IF TInterf.Kto2 = '9999' THEN TInterf.Kto2 = '1999'.
  759. IF TInterf.Kto2 = '9400' THEN TInterf.Kto2 = '1000'.
  760. IF TInterf.Kto2 = '9300' THEN TInterf.Kto2 = '1010'.
  761. IF TInterf.Kto2 = '9200' THEN TInterf.Kto2 = '1020'.
  762. IF TInterf.Kto2 = '9100' THEN TInterf.Kto2 = '1021'.
  763. IF TInterf.Kto2 = '9600' THEN TInterf.Kto2 = '1026'.
  764. IF TInterf.Kto2 = '9500' THEN TInterf.Kto2 = '1030'.
  765. IF TInterf.Kto2 = '9998' THEN TInterf.Kto2 = '3295'.
  766. iRetCode = hdKonto:Lesen(TInterf.Kto1).
  767. IF iRetCode <> 0 THEN DO:
  768. MESSAGE TInterf.Kto1 ' ist ein ungültiges Konto ' SKIP
  769. 'Fehlercode = ' iRetCode
  770. VIEW-AS ALERT-BOX ERROR.
  771. fBuchen = FALSE.
  772. END.
  773. iRetCode = hdKonto:Lesen(TInterf.Kto2).
  774. IF iRetCode <> 0 THEN DO:
  775. MESSAGE TInterf.Kto2 ' ist ein ungültiges Konto ' SKIP
  776. 'Fehlercode = ' iRetCode
  777. VIEW-AS ALERT-BOX ERROR.
  778. fBuchen = FALSE.
  779. END.
  780. CREATE AInterf.
  781. BUFFER-COPY TInterf TO AInterf.
  782. END.
  783. IF NOT fBuchen THEN RETURN 'ERROR'.
  784. IF T_Sammelbuchung THEN DO:
  785. iTrnr = 0.
  786. FOR EACH TInterf.
  787. FIND FIRST SInterf USE-INDEX SInterf-k1
  788. WHERE SInterf.Kto1 = TInterf.Kto1
  789. AND SInterf.Kto2 = TInterf.Kto2
  790. AND SInterf.Frw = TInterf.Frw
  791. AND SInterf.Kurs = TInterf.Kurs
  792. AND SInterf.Faktor = TInterf.Faktor NO-ERROR.
  793. IF NOT AVAILABLE SInterf THEN DO:
  794. iTrnr = iTrnr + 1.
  795. CREATE SInterf.
  796. BUFFER-COPY TInterf TO SInterf
  797. ASSIGN SInterf.Trnr1 = 0
  798. SInterf.Trnr2 = 0
  799. SInterf.Trnr = iTrnr
  800. SInterf.Datum = F_Buchdatum
  801. SInterf.Buchtxt1 = F_Buchungstext
  802. SInterf.Buchtxt2 = ''
  803. SInterf.Buchtxt3 = ''.
  804. NEXT.
  805. END.
  806. ASSIGN SInterf.Betrag = SInterf.Betrag + TInterf.Betrag
  807. SInterf.Betrag_Frw = SInterf.Betrag_Frw + TInterf.Betrag_Frw.
  808. END.
  809. FOR EACH TInterf:
  810. DELETE TInterf.
  811. END.
  812. FOR EACH SInterf NO-LOCK:
  813. CREATE TInterf.
  814. BUFFER-COPY SInterf TO TInterf.
  815. DELETE SInterf.
  816. END.
  817. END.
  818. FOR EACH TInterf BREAK BY TInterf.Trnr1
  819. BY TInterf.Trnr2
  820. BY TInterf.Trnr:
  821. F_Status:SCREEN-VALUE = TInterf.Kto1 + ' '
  822. + TInterf.Kto2 + ' '
  823. + TInterf.Buchtxt1 + ' '
  824. + STRING(TInterf.Betrag,'zzz,zzz,zz9.99-').
  825. iRetCode = hdBeleg:Buchen( TInterf.Datum, FALSE, TInterf.Kto1, TInterf.Buchtxt1, TInterf.Betrag ).
  826. iRetCode = hdBeleg:Buchen( TInterf.Datum, TRUE , TInterf.Kto2, TInterf.Buchtxt1, TInterf.Betrag ).
  827. iRetCode = hdBeleg:Einfügen(hdSesam).
  828. iRetCode = hdBeleg:Leeren().
  829. END.
  830. IF NOT T_Abschluss THEN RETURN ''.
  831. FOR EACH AInterf:
  832. FIND Interf USE-INDEX Interf-k1
  833. WHERE Interf.Firma = AInterf.Firma
  834. AND Interf.Trnr1 = AInterf.Trnr1
  835. AND Interf.Trnr2 = AInterf.Trnr2
  836. AND Interf.Trnr = AInterf.Trnr NO-ERROR.
  837. IF NOT AVAILABLE Interf THEN NEXT.
  838. ASSIGN Interf.Verbucht = TRUE
  839. Interf.Kto1 = AInterf.Kto1
  840. Interf.Kto2 = Ainterf.Kto2.
  841. END.
  842. END.
  843. END PROCEDURE.
  844. /* _UIB-CODE-BLOCK-END */
  845. &ANALYZE-RESUME