f-mahntexte-schlusstext.w 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  4. {adecomm/appserv.i}
  5. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS fFrameWin
  6. /*------------------------------------------------------------------------
  7. File:
  8. Description: from cntnrfrm.w - ADM2 SmartFrame Template
  9. Input Parameters:
  10. <none>
  11. Output Parameters:
  12. <none>
  13. ------------------------------------------------------------------------*/
  14. /* This .W file was created with the Progress AppBuilder. */
  15. /*----------------------------------------------------------------------*/
  16. /* Create an unnamed pool to store all the widgets created
  17. by this procedure. This is a good default which assures
  18. that this procedure's triggers and internal procedures
  19. will execute in this procedure's storage, and that proper
  20. cleanup will occur on deletion of the procedure. */
  21. CREATE WIDGET-POOL.
  22. /* *************************** Definitions ************************** */
  23. /* Parameters Definitions --- */
  24. /* Local Variable Definitions --- */
  25. DEF VAR cFirma AS CHAR NO-UNDO.
  26. DEF VAR iArt AS INT NO-UNDO.
  27. DEF VAR iSprcd AS INT NO-UNDO.
  28. DEF VAR iStufe AS INT NO-UNDO.
  29. DEF VAR hTabTexte AS HANDLE NO-UNDO.
  30. DEF VAR Progname AS CHAR NO-UNDO.
  31. DEF VAR hKontainer AS HANDLE NO-UNDO.
  32. DEF VAR hDaten AS HANDLE NO-UNDO.
  33. DEF VAR FMutFlag AS LOG INIT FALSE NO-UNDO.
  34. DEF TEMP-TABLE tTabTexte LIKE TabTexte.
  35. {src/adm2/widgetprto.i}
  36. /* _UIB-CODE-BLOCK-END */
  37. &ANALYZE-RESUME
  38. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  39. /* ******************** Preprocessor Definitions ******************** */
  40. &Scoped-define PROCEDURE-TYPE SmartFrame
  41. &Scoped-define DB-AWARE no
  42. &Scoped-define ADM-CONTAINER FRAME
  43. &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  44. /* Name of designated FRAME-NAME and/or first browse and/or first query */
  45. &Scoped-define FRAME-NAME fMain
  46. /* Standard List Definitions */
  47. &Scoped-Define ENABLED-OBJECTS RECT-1 E_Schlusstext Btn_Cancel
  48. &Scoped-Define DISPLAYED-OBJECTS E_Schlusstext
  49. /* Custom List Definitions */
  50. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  51. &Scoped-define List-6 E_Schlusstext
  52. /* _UIB-PREPROCESSOR-BLOCK-END */
  53. &ANALYZE-RESUME
  54. /* *********************** Control Definitions ********************** */
  55. /* Definitions of the field level widgets */
  56. DEFINE BUTTON Btn_Cancel
  57. LABEL "Abbrechen"
  58. SIZE 15 BY 1.
  59. DEFINE BUTTON Btn_Save
  60. LABEL "Speichern"
  61. SIZE 15 BY 1.
  62. DEFINE VARIABLE E_Schlusstext AS CHARACTER
  63. VIEW-AS EDITOR NO-WORD-WRAP SCROLLBAR-HORIZONTAL SCROLLBAR-VERTICAL
  64. SIZE 90 BY 6.67
  65. BGCOLOR 15 NO-UNDO.
  66. DEFINE RECTANGLE RECT-1
  67. EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
  68. SIZE 92 BY 9.
  69. /* ************************ Frame Definitions *********************** */
  70. DEFINE FRAME fMain
  71. E_Schlusstext AT ROW 1.48 COL 3 NO-LABEL WIDGET-ID 20
  72. Btn_Save AT ROW 8.81 COL 11 WIDGET-ID 16
  73. Btn_Cancel AT ROW 8.81 COL 37.8 WIDGET-ID 18
  74. RECT-1 AT ROW 1.24 COL 2 WIDGET-ID 14
  75. WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
  76. SIDE-LABELS NO-UNDERLINE THREE-D
  77. AT COL 1 ROW 1
  78. SIZE 94.4 BY 9.57 WIDGET-ID 100.
  79. /* *********************** Procedure Settings ************************ */
  80. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  81. /* Settings for THIS-PROCEDURE
  82. Type: SmartFrame
  83. Allow: Basic,Browse,DB-Fields,Query,Smart
  84. Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target
  85. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER
  86. */
  87. /* This procedure should always be RUN PERSISTENT. Report the error, */
  88. /* then cleanup and return. */
  89. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  90. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  91. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  92. RETURN.
  93. END.
  94. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  95. /* ************************* Create Window ************************** */
  96. &ANALYZE-SUSPEND _CREATE-WINDOW
  97. /* DESIGN Window definition (used by the UIB)
  98. CREATE WINDOW fFrameWin ASSIGN
  99. HEIGHT = 9.57
  100. WIDTH = 94.4.
  101. /* END WINDOW DEFINITION */
  102. */
  103. &ANALYZE-RESUME
  104. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB fFrameWin
  105. /* ************************* Included-Libraries *********************** */
  106. {src/adm2/containr.i}
  107. /* _UIB-CODE-BLOCK-END */
  108. &ANALYZE-RESUME
  109. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  110. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  111. /* SETTINGS FOR WINDOW fFrameWin
  112. VISIBLE,,RUN-PERSISTENT */
  113. /* SETTINGS FOR FRAME fMain
  114. NOT-VISIBLE FRAME-NAME */
  115. ASSIGN
  116. FRAME fMain:HIDDEN = TRUE.
  117. /* SETTINGS FOR BUTTON Btn_Save IN FRAME fMain
  118. NO-ENABLE */
  119. /* SETTINGS FOR EDITOR E_Schlusstext IN FRAME fMain
  120. 6 */
  121. ASSIGN
  122. E_Schlusstext:RETURN-INSERTED IN FRAME fMain = TRUE.
  123. /* _RUN-TIME-ATTRIBUTES-END */
  124. &ANALYZE-RESUME
  125. /* Setting information for Queries and Browse Widgets fields */
  126. &ANALYZE-SUSPEND _QUERY-BLOCK FRAME fMain
  127. /* Query rebuild information for FRAME fMain
  128. _Options = ""
  129. _Query is NOT OPENED
  130. */ /* FRAME fMain */
  131. &ANALYZE-RESUME
  132. /* ************************ Control Triggers ************************ */
  133. &Scoped-define SELF-NAME Btn_Cancel
  134. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Cancel fFrameWin
  135. ON CHOOSE OF Btn_Cancel IN FRAME fMain /* Abbrechen */
  136. DO:
  137. RUN ENDE_MUTATION.
  138. APPLY 'ENTRY' TO E_Schlusstext IN FRAME {&FRAME-NAME}.
  139. RETURN NO-APPLY.
  140. END.
  141. /* _UIB-CODE-BLOCK-END */
  142. &ANALYZE-RESUME
  143. &Scoped-define SELF-NAME Btn_Save
  144. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Save fFrameWin
  145. ON CHOOSE OF Btn_Save IN FRAME fMain /* Speichern */
  146. DO:
  147. RUN SPEICHERN.
  148. APPLY 'ENTRY' TO E_Schlusstext.
  149. RETURN NO-APPLY.
  150. END.
  151. /* _UIB-CODE-BLOCK-END */
  152. &ANALYZE-RESUME
  153. &UNDEFINE SELF-NAME
  154. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK fFrameWin
  155. /* *************************** Main Block *************************** */
  156. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  157. /* Now enable the interface if in test mode - otherwise this happens when
  158. the object is explicitly initialized from its container. */
  159. RUN initializeObject.
  160. &ENDIF
  161. SUBSCRIBE TO 'PUSHMAHNTEXT' ANYWHERE.
  162. ON 'VALUE-CHANGED' OF E_Schlusstext
  163. DO:
  164. RUN BEGIN_MUTATION.
  165. RETURN NO-APPLY.
  166. END.
  167. /* _UIB-CODE-BLOCK-END */
  168. &ANALYZE-RESUME
  169. /* ********************** Internal Procedures *********************** */
  170. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects fFrameWin _ADM-CREATE-OBJECTS
  171. PROCEDURE adm-create-objects :
  172. /*------------------------------------------------------------------------------
  173. Purpose: Create handles for all SmartObjects used in this procedure.
  174. After SmartObjects are initialized, then SmartLinks are added.
  175. Parameters: <none>
  176. ------------------------------------------------------------------------------*/
  177. END PROCEDURE.
  178. /* _UIB-CODE-BLOCK-END */
  179. &ANALYZE-RESUME
  180. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE BEGIN_MUTATION fFrameWin
  181. PROCEDURE BEGIN_MUTATION :
  182. /*------------------------------------------------------------------------------
  183. Purpose:
  184. Parameters: <none>
  185. Notes:
  186. ------------------------------------------------------------------------------*/
  187. DO WITH FRAME {&FRAME-NAME}:
  188. IF FMutFlag THEN RETURN.
  189. Btn_Save:SENSITIVE = TRUE.
  190. FMutFlag = TRUE.
  191. DYNAMIC-FUNCTION('setMutFlag':U, FMutFlag, Progname ) NO-ERROR.
  192. RUN DISABLE_COMBO IN hKontainer.
  193. END.
  194. END PROCEDURE.
  195. /* _UIB-CODE-BLOCK-END */
  196. &ANALYZE-RESUME
  197. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI fFrameWin _DEFAULT-DISABLE
  198. PROCEDURE disable_UI :
  199. /*------------------------------------------------------------------------------
  200. Purpose: DISABLE the User Interface
  201. Parameters: <none>
  202. Notes: Here we clean-up the user-interface by deleting
  203. dynamic widgets we have created and/or hide
  204. frames. This procedure is usually called when
  205. we are ready to "clean-up" after running.
  206. ------------------------------------------------------------------------------*/
  207. /* Hide all frames. */
  208. HIDE FRAME fMain.
  209. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  210. END PROCEDURE.
  211. /* _UIB-CODE-BLOCK-END */
  212. &ANALYZE-RESUME
  213. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI fFrameWin _DEFAULT-ENABLE
  214. PROCEDURE enable_UI :
  215. /*------------------------------------------------------------------------------
  216. Purpose: ENABLE the User Interface
  217. Parameters: <none>
  218. Notes: Here we display/view/enable the widgets in the
  219. user-interface. In addition, OPEN all queries
  220. associated with each FRAME and BROWSE.
  221. These statements here are based on the "Other
  222. Settings" section of the widget Property Sheets.
  223. ------------------------------------------------------------------------------*/
  224. DISPLAY E_Schlusstext
  225. WITH FRAME fMain.
  226. ENABLE RECT-1 E_Schlusstext Btn_Cancel
  227. WITH FRAME fMain.
  228. {&OPEN-BROWSERS-IN-QUERY-fMain}
  229. END PROCEDURE.
  230. /* _UIB-CODE-BLOCK-END */
  231. &ANALYZE-RESUME
  232. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE_MUTATION fFrameWin
  233. PROCEDURE ENDE_MUTATION :
  234. /*------------------------------------------------------------------------------
  235. Purpose:
  236. Parameters: <none>
  237. Notes:
  238. ------------------------------------------------------------------------------*/
  239. DO WITH FRAME {&FRAME-NAME}:
  240. Btn_Save:SENSITIVE = FALSE.
  241. FMutFlag = FALSE.
  242. DYNAMIC-FUNCTION('setMutFlag':U, FMutFlag, Progname ) NO-ERROR.
  243. RUN ENABLE_COMBO IN hKontainer NO-ERROR.
  244. END.
  245. END PROCEDURE.
  246. /* _UIB-CODE-BLOCK-END */
  247. &ANALYZE-RESUME
  248. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject fFrameWin
  249. PROCEDURE initializeObject :
  250. /*------------------------------------------------------------------------------
  251. Purpose: Super Override
  252. Parameters:
  253. Notes:
  254. ------------------------------------------------------------------------------*/
  255. EMPTY TEMP-TABLE tTabTexte.
  256. CREATE tTabTexte.
  257. hTabTexte = TEMP-TABLE tTabTexte:DEFAULT-BUFFER-HANDLE.
  258. RUN SUPER.
  259. hKontainer = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR.
  260. hDaten = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR.
  261. Progname = DYNAMIC-FUNCTION('getProgname':U IN hKontainer ) NO-ERROR.
  262. END PROCEDURE.
  263. /* _UIB-CODE-BLOCK-END */
  264. &ANALYZE-RESUME
  265. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE PUSHMAHNTEXT fFrameWin
  266. PROCEDURE PUSHMAHNTEXT :
  267. /*------------------------------------------------------------------------------
  268. Purpose:
  269. Parameters: <none>
  270. Notes:
  271. ------------------------------------------------------------------------------*/
  272. DEF INPUT PARAMETER ipDaten AS HANDLE NO-UNDO.
  273. DEF VAR ii AS INT NO-UNDO.
  274. EMPTY TEMP-TABLE tTabTexte.
  275. CREATE tTabTexte.
  276. IF VALID-HANDLE ( ipDaten ) THEN hTabTexte:BUFFER-COPY(ipDaten) NO-ERROR.
  277. ELSE tTabTexte.Inhalt = FILL(CHR(10), 05).
  278. ASSIGN cFirma = tTabtexte.Firma
  279. iSprcd = tTabtexte.Sprcd
  280. iStufe = INTEGER(SUBSTRING(tTabTexte.TextArt,05,02))
  281. iArt = INTEGER(SUBSTRING(tTabTexte.TextArt,07,02)).
  282. IF iArt <> 4 THEN RETURN.
  283. E_Schlusstext = tTabTexte.Inhalt.
  284. DO WITH FRAME {&FRAME-NAME}:
  285. DISPLAY {&List-6}.
  286. APPLY 'ENTRY' TO E_Schlusstext.
  287. END.
  288. END PROCEDURE.
  289. /* _UIB-CODE-BLOCK-END */
  290. &ANALYZE-RESUME
  291. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SPEICHERN fFrameWin
  292. PROCEDURE SPEICHERN :
  293. /*------------------------------------------------------------------------------
  294. Purpose:
  295. Parameters: <none>
  296. Notes:
  297. ------------------------------------------------------------------------------*/
  298. DO WITH FRAME {&FRAME-NAME}:
  299. ASSIGN {&List-6}.
  300. EMPTY TEMP-TABLE tTabTexte.
  301. CREATE tTabTexte.
  302. ASSIGN tTabTexte.Firma = cFirma
  303. tTabTexte.Sprcd = iSprcd
  304. tTabTexte.TextArt = SUBSTITUTE('MAHN&1&2', STRING(iStufe,'99'), STRING(iArt,'99'))
  305. tTabTexte.Inhalt = E_Schlusstext.
  306. Btn_Save:SENSITIVE = FALSE.
  307. END.
  308. RUN UPDATE_TABTEXTE IN hDaten ( hTabTexte ).
  309. FMutFlag = FALSE.
  310. DYNAMIC-FUNCTION('setMutFlag':U, FMutFlag, Progname ) NO-ERROR.
  311. RUN ENABLE_COMBO IN hKontainer NO-ERROR.
  312. END PROCEDURE.
  313. /* _UIB-CODE-BLOCK-END */
  314. &ANALYZE-RESUME