d-mahntexte.w 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715
  1. &ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2
  2. &ANALYZE-RESUME
  3. /* Connected Databases
  4. anadat PROGRESS
  5. */
  6. &Scoped-define WINDOW-NAME CURRENT-WINDOW
  7. {adecomm/appserv.i}
  8. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS dTables
  9. /*------------------------------------------------------------------------
  10. File:
  11. Description: from DATA.W - Template For SmartData objects in the ADM
  12. Input Parameters:
  13. <none>
  14. Output Parameters:
  15. <none>
  16. Modified: February 24, 1999
  17. ------------------------------------------------------------------------*/
  18. /* This .W file was created with the Progress AppBuilder. */
  19. /*----------------------------------------------------------------------*/
  20. /* Create an unnamed pool to store all the widgets created
  21. by this procedure. This is a good default which assures
  22. that this procedure's triggers and internal procedures
  23. will execute in this procedure's storage, and that proper
  24. cleanup will occur on deletion of the procedure. */
  25. CREATE WIDGET-POOL.
  26. /* *************************** Definitions ************************** */
  27. /* Parameters Definitions --- */
  28. /* Local Variable Definitions --- */
  29. &glob DATA-LOGIC-PROCEDURE .p
  30. &SCOPED-DEFINE Tabelle TabTexte
  31. &SCOPED-DEFINE TabWhere /* USE-INDEX Benutzer-k1 ~
  32. WHERE {&Tabelle}.Benutzer = tRowObject.Benutzer
  33. */
  34. { incl/datdefinition.i }
  35. DEF VAR iSprcd AS INT INIT 1 NO-UNDO.
  36. DEF VAR cTextArt AS CHAR NO-UNDO.
  37. DEF TEMP-TABLE tTabTexte LIKE TabTexte.
  38. /* _UIB-CODE-BLOCK-END */
  39. &ANALYZE-RESUME
  40. &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
  41. /* ******************** Preprocessor Definitions ******************** */
  42. &Scoped-define PROCEDURE-TYPE SmartDataObject
  43. &Scoped-define DB-AWARE yes
  44. &Scoped-define ADM-SUPPORTED-LINKS Data-Source,Data-Target,Navigation-Target,Update-Target,Commit-Target,Filter-Target
  45. /* Db-Required definitions. */
  46. &IF DEFINED(DB-REQUIRED) = 0 &THEN
  47. &GLOBAL-DEFINE DB-REQUIRED TRUE
  48. &ENDIF
  49. &GLOBAL-DEFINE DB-REQUIRED-START &IF {&DB-REQUIRED} &THEN
  50. &GLOBAL-DEFINE DB-REQUIRED-END &ENDIF
  51. &Scoped-define QUERY-NAME Query-Main
  52. /* Internal Tables (found by Frame, Query & Browse Queries) */
  53. &Scoped-define INTERNAL-TABLES TabTexte
  54. /* Definitions for QUERY Query-Main */
  55. &Scoped-Define ENABLED-FIELDS Firma TextArt Sprcd Inhalt
  56. &Scoped-define ENABLED-FIELDS-IN-TabTexte Firma TextArt Sprcd Inhalt
  57. &Scoped-Define DATA-FIELDS Firma TextArt Sprcd Inhalt
  58. &Scoped-define DATA-FIELDS-IN-TabTexte Firma TextArt Sprcd Inhalt
  59. &Scoped-Define MANDATORY-FIELDS
  60. &Scoped-Define APPLICATION-SERVICE
  61. &Scoped-Define ASSIGN-LIST
  62. &Scoped-Define DATA-FIELD-DEFS "d-mahntexte.i"
  63. &Scoped-Define DATA-TABLE-NO-UNDO NO-UNDO
  64. &Scoped-define QUERY-STRING-Query-Main FOR EACH TabTexte NO-LOCK INDEXED-REPOSITION
  65. {&DB-REQUIRED-START}
  66. &Scoped-define OPEN-QUERY-Query-Main OPEN QUERY Query-Main FOR EACH TabTexte NO-LOCK INDEXED-REPOSITION.
  67. {&DB-REQUIRED-END}
  68. &Scoped-define TABLES-IN-QUERY-Query-Main TabTexte
  69. &Scoped-define FIRST-TABLE-IN-QUERY-Query-Main TabTexte
  70. /* Custom List Definitions */
  71. /* List-1,List-2,List-3,List-4,List-5,List-6 */
  72. /* _UIB-PREPROCESSOR-BLOCK-END */
  73. &ANALYZE-RESUME
  74. /* ************************ Function Prototypes ********************** */
  75. {&DB-REQUIRED-START}
  76. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getCurrentRecid dTables _DB-REQUIRED
  77. FUNCTION getCurrentRecid RETURNS RECID
  78. ( /* parameter-definitions */ ) FORWARD.
  79. /* _UIB-CODE-BLOCK-END */
  80. &ANALYZE-RESUME
  81. {&DB-REQUIRED-END}
  82. {&DB-REQUIRED-START}
  83. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getCurrentRecord dTables _DB-REQUIRED
  84. FUNCTION getCurrentRecord RETURNS LOGICAL
  85. ( /* parameter-definitions */ ) FORWARD.
  86. /* _UIB-CODE-BLOCK-END */
  87. &ANALYZE-RESUME
  88. {&DB-REQUIRED-END}
  89. {&DB-REQUIRED-START}
  90. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getQueryBuffer dTables _DB-REQUIRED
  91. FUNCTION getQueryBuffer RETURNS HANDLE
  92. ( /* parameter-definitions */ ) FORWARD.
  93. /* _UIB-CODE-BLOCK-END */
  94. &ANALYZE-RESUME
  95. {&DB-REQUIRED-END}
  96. {&DB-REQUIRED-START}
  97. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD openQuery dTables _DB-REQUIRED
  98. FUNCTION openQuery RETURNS LOGICAL
  99. ( /* parameter-definitions */ ) FORWARD.
  100. /* _UIB-CODE-BLOCK-END */
  101. &ANALYZE-RESUME
  102. {&DB-REQUIRED-END}
  103. {&DB-REQUIRED-START}
  104. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD setSprcd dTables _DB-REQUIRED
  105. FUNCTION setSprcd RETURNS LOGICAL
  106. ( ipSprcd AS INT ) FORWARD.
  107. /* _UIB-CODE-BLOCK-END */
  108. &ANALYZE-RESUME
  109. {&DB-REQUIRED-END}
  110. {&DB-REQUIRED-START}
  111. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD setTextArt dTables _DB-REQUIRED
  112. FUNCTION setTextArt RETURNS CHARACTER
  113. ( ipiStufe AS INT, ipiArt AS INT ) FORWARD.
  114. /* _UIB-CODE-BLOCK-END */
  115. &ANALYZE-RESUME
  116. {&DB-REQUIRED-END}
  117. /* *********************** Control Definitions ********************** */
  118. {&DB-REQUIRED-START}
  119. /* Query definitions */
  120. &ANALYZE-SUSPEND
  121. DEFINE QUERY Query-Main FOR
  122. TabTexte SCROLLING.
  123. &ANALYZE-RESUME
  124. {&DB-REQUIRED-END}
  125. /* ************************ Frame Definitions *********************** */
  126. /* *********************** Procedure Settings ************************ */
  127. &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
  128. /* Settings for THIS-PROCEDURE
  129. Type: SmartDataObject
  130. Allow: Query
  131. Frames: 0
  132. Add Fields to: Neither
  133. Other Settings: PERSISTENT-ONLY COMPILE APPSERVER DB-AWARE
  134. */
  135. /* This procedure should always be RUN PERSISTENT. Report the error, */
  136. /* then cleanup and return. */
  137. IF NOT THIS-PROCEDURE:PERSISTENT THEN DO:
  138. MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U
  139. VIEW-AS ALERT-BOX ERROR BUTTONS OK.
  140. RETURN.
  141. END.
  142. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
  143. /* ************************* Create Window ************************** */
  144. &ANALYZE-SUSPEND _CREATE-WINDOW
  145. /* DESIGN Window definition (used by the UIB)
  146. CREATE WINDOW dTables ASSIGN
  147. HEIGHT = 1.62
  148. WIDTH = 46.6.
  149. /* END WINDOW DEFINITION */
  150. */
  151. &ANALYZE-RESUME
  152. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB dTables
  153. /* ************************* Included-Libraries *********************** */
  154. {src/adm2/data.i}
  155. /* _UIB-CODE-BLOCK-END */
  156. &ANALYZE-RESUME
  157. /* *********** Runtime Attributes and AppBuilder Settings *********** */
  158. &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
  159. /* SETTINGS FOR WINDOW dTables
  160. VISIBLE,,RUN-PERSISTENT */
  161. /* _RUN-TIME-ATTRIBUTES-END */
  162. &ANALYZE-RESUME
  163. /* Setting information for Queries and Browse Widgets fields */
  164. &ANALYZE-SUSPEND _QUERY-BLOCK QUERY Query-Main
  165. /* Query rebuild information for SmartDataObject Query-Main
  166. _TblList = "AnaDat.TabTexte"
  167. _Options = "NO-LOCK INDEXED-REPOSITION"
  168. _FldNameList[1] > AnaDat.TabTexte.Firma
  169. "Firma" "Firma" ? ? "character" ? ? ? ? ? ? yes ? no 8 yes ?
  170. _FldNameList[2] > AnaDat.TabTexte.TextArt
  171. "TextArt" "TextArt" ? ? "character" ? ? ? ? ? ? yes ? no 20 yes ?
  172. _FldNameList[3] > AnaDat.TabTexte.Sprcd
  173. "Sprcd" "Sprcd" ? ? "integer" ? ? ? ? ? ? yes ? no 5.6 yes ?
  174. _FldNameList[4] > AnaDat.TabTexte.Inhalt
  175. "Inhalt" "Inhalt" ? ? "character" ? ? ? ? ? ? yes ? no 1800 yes ?
  176. _Design-Parent is WINDOW dTables @ ( 1.14 , 2.6 )
  177. */ /* QUERY Query-Main */
  178. &ANALYZE-RESUME
  179. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK dTables
  180. /* *************************** Main Block *************************** */
  181. { incl/datmainblock.i }
  182. fOpen = FALSE.
  183. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
  184. RUN initializeObject.
  185. &ENDIF
  186. /* _UIB-CODE-BLOCK-END */
  187. &ANALYZE-RESUME
  188. /* ********************** Internal Procedures *********************** */
  189. {&DB-REQUIRED-START}
  190. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE dataAvailable dTables _DB-REQUIRED
  191. PROCEDURE dataAvailable :
  192. /*------------------------------------------------------------------------------
  193. Purpose: Super Override
  194. Parameters:
  195. Notes:
  196. ------------------------------------------------------------------------------*/
  197. { incl/datdataavailable.i }
  198. END PROCEDURE.
  199. /* _UIB-CODE-BLOCK-END */
  200. &ANALYZE-RESUME
  201. {&DB-REQUIRED-END}
  202. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI dTables _DEFAULT-DISABLE
  203. PROCEDURE disable_UI :
  204. /*------------------------------------------------------------------------------
  205. Purpose: DISABLE the User Interface
  206. Parameters: <none>
  207. Notes: Here we clean-up the user-interface by deleting
  208. dynamic widgets we have created and/or hide
  209. frames. This procedure is usually called when
  210. we are ready to "clean-up" after running.
  211. ------------------------------------------------------------------------------*/
  212. /* Hide all frames. */
  213. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
  214. END PROCEDURE.
  215. /* _UIB-CODE-BLOCK-END */
  216. &ANALYZE-RESUME
  217. {&DB-REQUIRED-START}
  218. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE INAKTIVIEREN dTables _DB-REQUIRED
  219. PROCEDURE INAKTIVIEREN :
  220. /*------------------------------------------------------------------------------
  221. Purpose:
  222. Parameters: <none>
  223. Notes:
  224. ------------------------------------------------------------------------------*/
  225. { incl/datinaktivieren.i }
  226. END PROCEDURE.
  227. /* _UIB-CODE-BLOCK-END */
  228. &ANALYZE-RESUME
  229. {&DB-REQUIRED-END}
  230. {&DB-REQUIRED-START}
  231. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE initializeObject dTables _DB-REQUIRED
  232. PROCEDURE initializeObject :
  233. /*------------------------------------------------------------------------------
  234. Purpose: Super Override
  235. Parameters:
  236. Notes:
  237. ------------------------------------------------------------------------------*/
  238. { incl/datinitialize.i }
  239. END PROCEDURE.
  240. /* _UIB-CODE-BLOCK-END */
  241. &ANALYZE-RESUME
  242. {&DB-REQUIRED-END}
  243. {&DB-REQUIRED-START}
  244. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REAKTIVIEREN dTables _DB-REQUIRED
  245. PROCEDURE REAKTIVIEREN :
  246. /*------------------------------------------------------------------------------
  247. Purpose:
  248. Parameters: <none>
  249. Notes:
  250. ------------------------------------------------------------------------------*/
  251. { incl/datreaktivieren.i }
  252. END PROCEDURE.
  253. /* _UIB-CODE-BLOCK-END */
  254. &ANALYZE-RESUME
  255. {&DB-REQUIRED-END}
  256. {&DB-REQUIRED-START}
  257. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPOS_TABELLE dTables _DB-REQUIRED
  258. PROCEDURE REPOS_TABELLE :
  259. /*------------------------------------------------------------------------------
  260. Purpose:
  261. Parameters: <none>
  262. Notes:
  263. ------------------------------------------------------------------------------*/
  264. { incl/datrepos.i }
  265. END PROCEDURE.
  266. /* _UIB-CODE-BLOCK-END */
  267. &ANALYZE-RESUME
  268. {&DB-REQUIRED-END}
  269. {&DB-REQUIRED-START}
  270. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_FILTER dTables _DB-REQUIRED
  271. PROCEDURE SET_FILTER :
  272. /*------------------------------------------------------------------------------
  273. Purpose:
  274. Parameters: <none>
  275. Notes:
  276. ------------------------------------------------------------------------------*/
  277. { incl/datsetfilter.i }
  278. END PROCEDURE.
  279. /* _UIB-CODE-BLOCK-END */
  280. &ANALYZE-RESUME
  281. {&DB-REQUIRED-END}
  282. {&DB-REQUIRED-START}
  283. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_OPENFLAG dTables _DB-REQUIRED
  284. PROCEDURE SET_OPENFLAG :
  285. /*------------------------------------------------------------------------------
  286. Purpose:
  287. Parameters: <none>
  288. Notes:
  289. ------------------------------------------------------------------------------*/
  290. { incl/datsetopenflag.i }
  291. END PROCEDURE.
  292. /* _UIB-CODE-BLOCK-END */
  293. &ANALYZE-RESUME
  294. {&DB-REQUIRED-END}
  295. {&DB-REQUIRED-START}
  296. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_SORT dTables _DB-REQUIRED
  297. PROCEDURE SET_SORT :
  298. /*------------------------------------------------------------------------------
  299. Purpose:
  300. Parameters: <none>
  301. Notes:
  302. ------------------------------------------------------------------------------*/
  303. { incl/datsetsort.i }
  304. END PROCEDURE.
  305. /* _UIB-CODE-BLOCK-END */
  306. &ANALYZE-RESUME
  307. {&DB-REQUIRED-END}
  308. {&DB-REQUIRED-START}
  309. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE UPDATE_TABTEXTE dTables _DB-REQUIRED
  310. PROCEDURE UPDATE_TABTEXTE :
  311. /*------------------------------------------------------------------------------
  312. Purpose:
  313. Parameters: <none>
  314. Notes:
  315. ------------------------------------------------------------------------------*/
  316. DEF INPUT PARAMETER ipDaten AS HANDLE NO-UNDO.
  317. DEF VAR htTabTexte AS HANDLE NO-UNDO.
  318. DEF VAR xiSprcd AS INT NO-UNDO.
  319. DEF VAR xiStufe AS INT NO-UNDO.
  320. DEF VAR xiArt AS INT NO-UNDO.
  321. DEF VAR xcTextArt AS CHAR NO-UNDO.
  322. DEF VAR ix AS INT NO-UNDO.
  323. DEF BUFFER bTabTexte FOR TabTexte.
  324. EMPTY TEMP-TABLE tTabTexte.
  325. CREATE tTabTexte.
  326. htTabTexte = TEMP-TABLE tTabTexte:DEFAULT-BUFFER-HANDLE.
  327. htTabTexte:BUFFER-COPY(ipDaten).
  328. REPEAT TRANSACTION:
  329. FIND bTabTexte OF tTabTexte NO-ERROR.
  330. IF NOT AVAILABLE bTabTexte THEN CREATE bTabTexte.
  331. BUFFER-COPY tTabTexte TO bTabTexte.
  332. ASSIGN xiSprcd = tTabTexte.Sprcd
  333. xiStufe = INTEGER(SUBSTRING(tTabTexte.TextArt,05,02))
  334. xiArt = INTEGER(SUBSTRING(tTabTexte.TextArt,07,02))
  335. .
  336. DO ix = 0 TO 4:
  337. IF ix = xiStufe THEN NEXT.
  338. xcTextArt = SUBSTITUTE('MAHN&1&2', STRING(ix,'99'), STRING(xiArt,'99') ).
  339. FIND bTabTexte
  340. WHERE bTabTexte.Firma = tTabTexte.Firma
  341. AND bTabTexte.TextArt = xcTextArt
  342. AND bTabTexte.Sprcd = xiSprcd NO-ERROR.
  343. IF AVAILABLE bTabTexte THEN NEXT.
  344. CREATE bTabTexte.
  345. ASSIGN bTabTexte.Firma = tTabTexte.Firma
  346. bTabTexte.TextArt = xcTextArt
  347. bTabTexte.Sprcd = xiSprcd
  348. bTabTexte.Inhalt = tTabTexte.Inhalt.
  349. RELEASE bTabTexte.
  350. END.
  351. RELEASE bTabTexte.
  352. LEAVE.
  353. END.
  354. DYNAMIC-FUNCTION('openQuery':U) NO-ERROR.
  355. DYNAMIC-FUNCTION('getCurrentRecord':U) NO-ERROR.
  356. END PROCEDURE.
  357. /* _UIB-CODE-BLOCK-END */
  358. &ANALYZE-RESUME
  359. {&DB-REQUIRED-END}
  360. /* ************************ Function Implementations ***************** */
  361. {&DB-REQUIRED-START}
  362. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getCurrentRecid dTables _DB-REQUIRED
  363. FUNCTION getCurrentRecid RETURNS RECID
  364. ( /* parameter-definitions */ ) :
  365. /*------------------------------------------------------------------------------
  366. Purpose:
  367. Notes:
  368. ------------------------------------------------------------------------------*/
  369. { incl/datgetcurrentrecid.i }
  370. END FUNCTION.
  371. /* _UIB-CODE-BLOCK-END */
  372. &ANALYZE-RESUME
  373. {&DB-REQUIRED-END}
  374. {&DB-REQUIRED-START}
  375. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getCurrentRecord dTables _DB-REQUIRED
  376. FUNCTION getCurrentRecord RETURNS LOGICAL
  377. ( /* parameter-definitions */ ) :
  378. /*------------------------------------------------------------------------------
  379. Purpose:
  380. Notes:
  381. ------------------------------------------------------------------------------*/
  382. DEF VAR iRecid AS RECID NO-UNDO.
  383. DEF VAR hBuffer AS HANDLE NO-UNDO.
  384. DEF BUFFER bTabTexte FOR TabTexte.
  385. iRecid = DYNAMIC-FUNCTION('getCurrentRecid':U) NO-ERROR.
  386. IF iRecid = ? OR
  387. iRecid = 0 THEN DO:
  388. EMPTY TEMP-TABLE tTabTexte.
  389. CREATE tTabTexte.
  390. hBuffer = TEMP-TABLE tTabTexte:DEFAULT-BUFFER-HANDLE.
  391. ASSIGN tTabTexte.Firma = Firma
  392. tTabTexte.TextArt = cTextArt
  393. tTabTexte.Sprcd = iSprcd
  394. tTabTexte.Inhalt = ''.
  395. PUBLISH 'PUSHMAHNTEXT' ( hBuffer ).
  396. RETURN FALSE.
  397. END.
  398. FIND bTabTexte NO-LOCK WHERE RECID(bTabTexte) = iRecid.
  399. hBuffer = BUFFER bTabTexte:HANDLE.
  400. PUBLISH 'PUSHMAHNTEXT' ( hBuffer ).
  401. RETURN FALSE. /* Function return value. */
  402. END FUNCTION.
  403. /* _UIB-CODE-BLOCK-END */
  404. &ANALYZE-RESUME
  405. {&DB-REQUIRED-END}
  406. {&DB-REQUIRED-START}
  407. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getQueryBuffer dTables _DB-REQUIRED
  408. FUNCTION getQueryBuffer RETURNS HANDLE
  409. ( /* parameter-definitions */ ) :
  410. /*------------------------------------------------------------------------------
  411. Purpose:
  412. Notes:
  413. ------------------------------------------------------------------------------*/
  414. RETURN BUFFER rowObject:HANDLE.
  415. END FUNCTION.
  416. /* _UIB-CODE-BLOCK-END */
  417. &ANALYZE-RESUME
  418. {&DB-REQUIRED-END}
  419. {&DB-REQUIRED-START}
  420. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION openQuery dTables _DB-REQUIRED
  421. FUNCTION openQuery RETURNS LOGICAL
  422. ( /* parameter-definitions */ ) :
  423. /*------------------------------------------------------------------------------
  424. Purpose: Super Override
  425. Notes:
  426. ------------------------------------------------------------------------------*/
  427. DEF VAR Felder AS CHAR NO-UNDO.
  428. DEF VAR Inhalt AS CHAR NO-UNDO.
  429. DEF VAR ix AS INT NO-UNDO.
  430. DEF VAR cFeld AS CHAR NO-UNDO.
  431. IF NOT fOpen THEN RETURN FALSE.
  432. xWhere = ''.
  433. xSort = ''.
  434. xString = ''.
  435. Felder = DYNAMIC-FUNCTION('getForeignFields':U) NO-ERROR.
  436. Inhalt = DYNAMIC-FUNCTION('getForeignValues':U) NO-ERROR.
  437. /* ix = LOOKUP('Feld', Felder, ',') / 2. */
  438. /* cFeld = ENTRY (ix , Inhalt, CHR(01)). */
  439. xWhere = 'Tabtexte.Firma = "&1" AND '
  440. + 'Tabtexte.TextArt = "&2" AND '
  441. + 'Tabtexte.Sprcd = &3 '.
  442. xWhere = SUBSTITUTE(xWhere, Firma, cTextArt, iSprcd).
  443. { incl/datopenquery.i }
  444. IF xWhere <> '' THEN DYNAMIC-FUNCTION('setQueryWhere':U , INPUT xWhere ).
  445. IF xString <> '' THEN DYNAMIC-FUNCTION('setQueryString':U, INPUT xString).
  446. IF xSort <> '' THEN DYNAMIC-FUNCTION('setQuerySort':U , INPUT xSort ).
  447. RETURN SUPER( ).
  448. END FUNCTION.
  449. /* _UIB-CODE-BLOCK-END */
  450. &ANALYZE-RESUME
  451. {&DB-REQUIRED-END}
  452. {&DB-REQUIRED-START}
  453. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setSprcd dTables _DB-REQUIRED
  454. FUNCTION setSprcd RETURNS LOGICAL
  455. ( ipSprcd AS INT ) :
  456. /*------------------------------------------------------------------------------
  457. Purpose:
  458. Notes:
  459. ------------------------------------------------------------------------------*/
  460. DEF VAR hQuery AS HANDLE NO-UNDO.
  461. iSprcd = ipSprcd.
  462. DYNAMIC-FUNCTION('openQuery':U) NO-ERROR.
  463. IF fOpen THEN DO:
  464. hQuery = DYNAMIC-FUNCTION('getQueryHandle':U).
  465. hQuery:GET-FIRST() NO-ERROR.
  466. DYNAMIC-FUNCTION('getCurrentRecord':U) NO-ERROR.
  467. END.
  468. RETURN TRUE.
  469. END FUNCTION.
  470. /* _UIB-CODE-BLOCK-END */
  471. &ANALYZE-RESUME
  472. {&DB-REQUIRED-END}
  473. {&DB-REQUIRED-START}
  474. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION setTextArt dTables _DB-REQUIRED
  475. FUNCTION setTextArt RETURNS CHARACTER
  476. ( ipiStufe AS INT, ipiArt AS INT ) :
  477. /*------------------------------------------------------------------------------
  478. Purpose:
  479. Notes:
  480. ------------------------------------------------------------------------------*/
  481. DEF VAR hQuery AS HANDLE NO-UNDO.
  482. /* -------------------------------------------------- */
  483. /* Stufe: 0 = Kontoauszug */
  484. /* 1 = 1. Mahnung */
  485. /* 2 = 2. Mahnung */
  486. /* 3 = 3. Mahnung */
  487. /* 4 = Betreibung */
  488. /* */
  489. /* Art: 0 = Firmen-Anschrift */
  490. /* 1 = Kopf-Titel */
  491. /* 2 = Kopf-Text */
  492. /* 3 = Ueberschrifttext */
  493. /* 4 = Schlusstext */
  494. /* 5 = Rekap-Text */
  495. /* -------------------------------------------------- */
  496. cTextArt = SUBSTITUTE('MAHN&1&2', STRING(ipiStufe,'99'), STRING(ipiArt,'99')).
  497. fOpen = TRUE.
  498. DYNAMIC-FUNCTION('openQuery':U) NO-ERROR.
  499. hQuery = DYNAMIC-FUNCTION('getQueryHandle':U).
  500. hQuery:GET-FIRST() NO-ERROR.
  501. DYNAMIC-FUNCTION('getCurrentRecord':U) NO-ERROR.
  502. RETURN cTextArt.
  503. END FUNCTION.
  504. /* _UIB-CODE-BLOCK-END */
  505. &ANALYZE-RESUME
  506. {&DB-REQUIRED-END}